【ONE·MySQL || 基础介绍】

news2025/1/24 22:48:21

总言

  主要内容:MySQL在Centos 7下的安装(主要学习相关指令语句,理解安装操作是在做什么)、对MySQL数据库有一个基础认识。

文章目录

  • 总言
  • 0、MySQL的安装与卸载(Centos 7)
    • 0.1、MySQL的卸载
      • 0.1.1、卸载不必要的环境(非必要步骤)
      • 0.1.2、检查系统安装包、卸载系统安装包
    • 0.2、MySQL的安装
      • 0.2.1、获取并安装mysql官方yum源
      • 0.2.2、一键安装mysql
      • 0.1.5、启动与登录
      • 0.1.6、配置说明
  • 1、MySQL数据库基础介绍
    • 1.1 什么是数据库
      • 1.1.1、介绍
      • 1.1.2、主流数据库
    • 1.2、基础认知
      • 1.2.1、如何连接服务器(登录与退出)
      • 1.2.2、理解服务器、数据库、表的关系
        • 1.2.2.1、具象化说明
        • 1.2.2.2、理解三者关系
      • 1.2.3、MySQL架构
      • 1.2.4、SQL分类
      • 1.2.5、认识存储引擎

  
  
  

0、MySQL的安装与卸载(Centos 7)

  说明:Linux中,安装与卸载应用级软件,用户全部切换成为root,⼀旦安装,普通用户就能使用。(这也是为什么普通用户要安装时需要执行sudo语句。)
  
  

0.1、MySQL的卸载

0.1.1、卸载不必要的环境(非必要步骤)

  1)、检查当前Linux中是否存在MySQL
  云服务器上默认可能存在MySQL,可使用以下语句检查。

[root@VM-4-3-centos mysql]# whoami
root 
[root@VM-4-3-centos mysql]# ps axj | grep mysqld
19561 21517 21516 19376 pts/0    21516 S+       0   0:00 grep --color=auto mysqld
[root@VM-4-3-centos mysql]# ps axj | grep mariadb
19561 21528 21527 19376 pts/0    21527 S+       0   0:00 grep --color=auto mariadb
[root@VM-4-3-centos mysql]# which mysql
/usr/bin/which: no mysql in (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)
[root@VM-4-3-centos mysql]# 

  说明:
  1、mariadb是mysql的开源分支。
  2、根据上述显示可知,我们当前使用的机子中没有内置MySQL,可直接跳转到后续的安装环节。
  3、若存在默认mysql,可以直接使用,但需要查看版本是否匹配mysql --version。(ps:默认的mysql存在配置齐全的可能,这里主要是学习使用方法才有此操作)。
  
  
  
  2)、终止MySQL进程运行
  准备卸载MySQL,首先要检查其是否在运行,若运行,要先停止运行。(类似于Windows上卸载程序,首先要终止程序运行。)
  使用指令:systemctl stop XXX(跟进程名称,这里是查询到的mysqld或mariadb)

  之后,可使用grep指令查询进程是否停止:grep mysqld、grep mariadb

  
  
  

0.1.2、检查系统安装包、卸载系统安装包

  1)、检查系统安装包

  系统安装包以.rpm格式为主,可使用rpm -qa查询,默认显示当前系统中所有安装包。

在这里插入图片描述

  这里我们使用管道和grep过滤筛选:

rpm -qa | grep mariadb
rpm -qa | grep mysql

  演示当前主机查询到的安装包(PS:根据自己情况而定,这里只是演示)

[root@VM-4-3-centos mysql]# rpm -qa | grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64

  或者:

[root@VM-4-3-centos mysql]# rpm -qa | grep mysql
mysql-community-server-5.7.44-1.el7.x86_64
mysql-community-client-5.7.44-1.el7.x86_64
mysql57-community-release-el7-11.noarch
mysql-community-libs-5.7.44-1.el7.x86_64
mysql-community-common-5.7.44-1.el7.x86_64
[root@VM-4-3-centos mysql]# 

  
  
  2)、卸载系统安装包
  1、根据查询到的安装包,可以使用yum指令卸载:yum remove XXX
  
  2、当安装包有很多时,这样一个一个卸载比较麻烦,这时我们可以做如下处理:(卸载时有命令行询问,无法批量化卸载,因此加-y选项,表示不询问是/否,直接卸载。)

rpm -qa | grep mysql | xargs yum remove -y 

  相关卸载演示1:
在这里插入图片描述

  
  相关卸载演示2:
  
  
  
  
  

0.2、MySQL的安装

0.2.1、获取并安装mysql官方yum源

  yum源官网链接:http://repo.mysql.com/(若链接失效则自行查询)
  
  

  1)、为什么需要找yum源

  问题说明: 我们的需求为一键安装MySQL(即简单输入几条指令,就可以达到安装效果),因此使用yum来完成该操作(例如之前学习的yum安装man手册、gcc/g++等等)。但需要知道这些软件能够安装,实则是当前Linux中有对应的yum源。
  因此,要解决上述一键安装mysql的问题,首先要获取到它的yum源。
  

  演示: 以下为当前yum源中存储的仓库地址,待我们安装好yum源后,再来对比看看有何变化。(这里显示的yum源也是根据自己情况而定)。

ls /etc/yum.repos.d -l

在这里插入图片描述

  PS:此处对于yum若有疑惑,可回顾Linux || 基本工具介绍

  
  
  
  2)、需要哪一个mysql的yum源
  
  step1:安装的mysql的yum源要和自己主机对应。因此,需要 先确定自己Linux版本号

cat /etc/redhat-release

在这里插入图片描述

  
  
  setp2:在官网中查询匹配的版本。单击右键显示源代码,这样可以方便查看版本号。
在这里插入图片描述
  
  需要找谁:根据上一步查询到的Linux版本号安装。

在这里插入图片描述

  下载上传到Linux中。
在这里插入图片描述
  
  
  
  step3:安装mysql的yum源
  使用rpm -ivh指令,相当于Windows中,我们下载好软件包后,双击安装软件包。

rpm -ivh mysql57-community-release-el7.rpm

在这里插入图片描述

  
  
  
  3)、安装前后是在做什么
  
在这里插入图片描述

  
  
  4)、收尾工作:检查
  可以查看该yum源:实则里面存储者各种版本链接
在这里插入图片描述
  
  
  可以检测一下当前yum源是否正常:

yum list | grep mysql

在这里插入图片描述
  
  

  
  

0.2.2、一键安装mysql

  1)、安装mysql
  可使用yum安装mysql:虽然只是一个指令,但会将MySQL需要的各种包和组件都安装下来。

yum install -y mysql-community-server

  关于安装遇到秘钥过期的问题:

rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

在这里插入图片描述
  
  

  2)、检查是否安装成功

在这里插入图片描述

  mysql:数据库的客户端。
  mysqld:数据库的服务端。
  /etc/my.cnf:数据库的配置文件。
  
  
  
  

0.1.5、启动与登录

  1)、初步认识mysql是什么

  如下,我们先将MySQL启动起来。

systemctl start mysqld

在这里插入图片描述
  
  那么,mysql这种数据库究竟是什么?
  如下图可知,①站在网络角度,mysql是一个基于TCP协议的网络服务(根据之前所学,TCP属于应用层协议,和我们之前写的网络版本计算器、各种tcpserver一样,有自己的一套协议,也需要序列化反序列化等等处理。);②站在OS角度,mysql实则是一个用户层进程。

在这里插入图片描述
  
  
  

  2)、MySQL登录问题
  说明:不同版本mysql,登录方式可能存在一定差异。


  方式一:存在一个临时的root密码,使⽤临时密码登录。

grep 'temporary password' /var/log/mysqld.log

在这里插入图片描述

  其它说明:
  1、可以打开查看一下这个log文件里有什么:vim /var/log/mysqld.log
  2、在这种方式下,首次使用mysql会提出报错:要求为修改默认密码。

ERROR 1820 (HY000): 
You must reset your password using ALTER USER statement before executing this statement.

  此时只需要修改初始登录密码即可(也可以学方式三不设密码,有需要时再设置)
  


  
  方式二:root默认没有密码,可直接登录。

mysql -uroot -p

在这里插入图片描述

  其它说明:这里的root并非Linux中的root用户,而是mysql仿照Linux,弄出了一个自身的root用户。


  
  方式三:设置mysql配置⽂件,将mysql设为免密登录。(需要注意,修改配置文件后,需要重启服务端。)

  说明:[mysqld]最后⼀栏配置加⼊: skip-grant-tables 选项,保存退出。(对于不知道是什么的内容,就放在配置⽂件最后。)

在这里插入图片描述

  重启,让新的配置文件生效:以下两条指令都可以,这里我们修改的是[mysqld],那么重启的是服务端。。

systemctl start mysqld
systemctl restart mysqld

在这里插入图片描述

  
  
  

0.1.6、配置说明

  1)、两个核心的配置
  这里暂时只做简单的配置处理,若有其余需要自行探索。
  1、配置服务端编码格式:character-set-server=utf8
  2、配置存储引擎:default-storage-engine=innodb

在这里插入图片描述

  
  
  2)、设置开机启动(可以不设)

#开启开机⾃启动
systemctl enable mysqld
systemctl daemon-reload

  
  
  3)、简单介绍datadir=/var/lib/mysql
  根据上述,在配置文件中可查看到mysql存储数据的位置,这里可以简单查看一二(根据自己情况而定,需要知道的是,未来若卸载了mysql数据库,这里存储的数据会保留下来。)
在这里插入图片描述

  
  
  
  

1、MySQL数据库基础介绍

在这里插入图片描述

1.1 什么是数据库

1.1.1、介绍

  1)、是什么
  MySQL是一个开源的关系型数据库管理系统,常用于Web应用程序的后端数据存储。

数据库,数据管理的产物。数据管理是数据库的核心任务,内容包括对数据的分类、组织、编码、储存、检索和维护。
数据库管理系统,是利用数据库系统对数据进行管理的软件系统。

  
  通常,口头上说所的MySQL数据库,是/var/lib/mysql中的这堆数据文件,也可以是mysql、mysqld及其数据的集合。
在这里插入图片描述

  
  
  

  2)、为什么需要数据库
  要明白这个问题, 则要来理解文件VS数据库。
在这里插入图片描述

  ps:虽然OS也会对文件进行管理,但它们管理的侧重点不同。
  数据存储的介质:磁盘、内存。
  
  
  

1.1.2、主流数据库

  SQL Sever: 微软的产品,Net程序员的最爱,中大型项目。

  Oracle: 甲骨文产品,适合大型项目,复杂的业务逻辑,并发一般来说不如MySQL。

  MySQL:世界上最受欢迎的数据库,属于甲骨文,并发性好,不适合做复杂的业务。主要用在电商,SNS,论坛。对简单的SQL处理效果好。

  PostgreSQL :加州大学伯克利分校计算机系开发的关系型数据库,不管是私用,商用,还是学术研究使用,可以免费使用,修改和分发。

  SQLite: 是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。

  H2: 是一个用Java开发的嵌入式数据库,它本身只是一个类库,可以直接嵌入到应用项目中。

  
  
  

1.2、基础认知

1.2.1、如何连接服务器(登录与退出)

  连接指令如下:

mysql -h 127.0.0.1 -P 3306 -u root -p
mysql -h [hostname] -P [port] -u [username] -p

  说明:
  1、-h-P 选项:MySQL 服务器不在本地或使用的不是默认端口(3306),则可以使用 这两个选项来指定主机和端口 (从这里也可以看出mysql是一套网络服务)

  2、mysql 默认登录使用的主机为本地localhost(127.0.0.1),默认端口为3306 。

  3、端口号是可以通过配置文件修改的。(在公司内部是否需要改动,看公司,我们自己写时用默认的3306)

在这里插入图片描述
  
  
  
  MySQL退出指令如下:

mysql > exit;
mysql > quit;
mysql > \q;

  
  
  
  
  

1.2.2、理解服务器、数据库、表的关系

  1)、windows中默认的服务管理器
  services.msc:执行 win+r 输入 services.msc 可打开服务管理器。通过右键或图标进行服务管理( 启动,停止,暂停,重启动等)。

在这里插入图片描述
  
  

1.2.2.1、具象化说明

  1)、创建一个数据库,本质是在Linux上是做什么?

  如下图所示,可知:在mysql中,建立一个数据库create database XXX,本质在linux下是建立了一个目录XXX!

在这里插入图片描述

  这里创建出的实则是空文件(db.opt之后学习库的操作时再解释)。

在这里插入图片描述

  
  
  
  
  2)、创建一个表,本质是在Linux上是做什么?
  如下图所示,在mysql中建立一个表,本质是在Linux上创建对应名称的文件。

在这里插入图片描述

  
  
  3)、扩展:简单演示表结构

在这里插入图片描述

  回答:存在缓存延迟。(后续讲解)
  
  
  
  

1.2.2.2、理解三者关系

  1)、基本介绍
  所谓安装数据库服务器,只是在机器上安装了一个数据库管理系统程序,这个管理程序可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库。
  为保存应用中实体的数据,一般会在数据库中创建多个表,以保存程序中实体的数据。

  数据库服务器、数据库和表的关系如下:
在这里插入图片描述

  
  
  
  2)、简单理解mysql的逻辑结构和物理结构
  逻辑存储结构: mysql的逻辑存储结构遵循了关系型数据库的基本概念,即将数据组织为数据库(database)、表(table)、行(row)、列(column)等层次。除了上述基本概念外,mysql还支持以下逻辑存储结构:索引(index)、视图(view)、函数(function)、存储过程(stored procedure)。
  
  物理存储结构: mysql的物理存储结构是指mysql如何将逻辑存储结构映射到磁盘上的文件系统。mysql支持多种存储引擎(storage engine),每种存储引擎都有自己独特的物理存储结构和特点。
  
  
  
  

1.2.3、MySQL架构

在这里插入图片描述
  
  客户端连接:这是应用程序与MySQL数据库之间的交互层,客户端可以通过连接池,从连接池中获取数据库连接,然后将SQL查询发送给服务器端。

  • MySQL连接器: 是MySQL数据库的一个关键组件,负责处理客户端与服务器之间的连接和通信。MySQL提供了多种连接器,适用于不同的编程语言和开发平台,例如C、Java、PHP等语言来连接MySQL数据库。
  • 连接池: 管理、缓冲用户的连接,接收客户端的连接,线程处理等需要缓存的需求。例如:当客户端发送一个请求连接,会从连接池中获取一个连接进行使用。

  
  
  核心服务层: 第二层架构主要完成大多数的核心服务功能,如SQL接口,DML、DDL语句的封装,SQL的分析和优化,部分内置函数的执行等等。

  • 管理服务和工具: 系统的管理和控制工具,例如数据库备份和恢复、数据库安全管理,如用户及权限管理、数据库复制管理、数据库集群管理、数据库分区/分库/分表管理、数据库元数据管理等。
  • SQL接口: SQL Interface,接收用户的SQL命令并进行处理,得到用户所需要的结果。可处理DDL、DML等。
  • 查询解析器: 验证和解析SQL命令,例如过滤条件、语法结构等。
  • 查询优化器: 在执行查询之前,使用默认的一套优化机制对sql语句进行优化。
  • 缓存: :包括全局和弓|擎特定的缓存,提高查询的效率。如果缓存当中有想查询的数据,则查询语句就可以从缓存中取数据,无须再通过解析和执行。(该缓存机制由一系列小缓存组成,如表缓存、记录缓存、key缓存、权限缓存等)。

  
  

  存储引擎层 :通常叫做StorEngine Layer,也就是底层数据存取操作实现部分,由多种存储引擎共同组成。

  • 插件式存储引擎(可插拔式存储引擎): 管理和操作数据的一种机制,包括存储数据、如何更新、查询数据等。(ps:通过系统调用接口,存储引擎控制的是数据怎么组织,怎么存、怎么取,但最终数据存储还是要落到磁盘上。)

  
  

  第四层:系统文件层 / 存储层

  • 文件系统:配置文件、数据文件、日志文件、错误文件、二进制文件等等的保存.主要将数据存储在文件系统之上,并完成与存储引擎的交互,存储具体的数据。

  
  
  
  扩展链接  
在这里插入图片描述

  
  
  
  

1.2.4、SQL分类

  DDL(data definition language):数据定义语言,用来维护存储数据的结构。(数据库和表结构的属性操作)
  代表指令: create, drop, alter
  

  DML(data manipulation language):数据操纵语言,用来对数据进行操作。(数据库和表结构的数据内容操作)
  代表指令: insert,delete,update
  DML中又单独分了一个DQL,数据查询语言,代表指令: select
  

  DCL(Data Control Language):数据控制语言,主要负责权限管理和事务(整个MySQL的系统安全和账户管理工作,主动和被动下都是比较可靠的)
  代表指令: grant,revoke,commit
  
  
  
  
  
  

1.2.5、认识存储引擎

  1)、是什么
  存储引擎: 数据库管理系统如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。MySQL的核心就是插件式存储引擎,支持多种存储引擎。
  
  在MySQL中的存储引擎有很多种,可以通过SHOW ENGINES语句来查看:

在这里插入图片描述
  
  
  2)、扩展:InnoDB存储引擎(comment介绍)

  ① InnoDB是事务型数据库的首选引擎,支持事务ACID,简单地说就是支持事务完整性、一致性。
  ② InnoDB支持行级锁。行级锁可以在最大程度上支持并发,以及类似Oracle的一致性读、多用户并发。
  ③ InnoDB是为处理巨大数据量的最大性能设计,InnoDB存储引擎完全与MySQL服务器整合,InnoDB存储引擎为在主内存中缓存数据和索引而维持它自己的缓冲池。
  ④ InnoDB支持外键完整性约束,存储表中的数据时,每张表的存储都按照主键顺序存放,如果没有显式在表定义时指定主键,InnoDB会为每一行生成一个6字节的ROWID,并以此作为主键。
  ⑤ InnoDB支持崩溃数据自修复。InnoDB存储引擎中就是依靠redolog来保证的。当数据库异常崩溃后,数据库重新启动时会根据redolog进行数据恢复,保证数据库恢复到崩溃前的状态。
  
  
  
  
  
  
  
  
  
  
  
  
  
  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1329948.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C练习题13答案

单项选择题(本大题共20小题,每小题2分,共40分。在每小题给出的四个备选项中,选出一个正确的答案,并将所选项前的字母填写在答题纸的相应位置上。) 1.结构化程序由三种基本结构组成、三种基本结构组成的算法是(A) A.可以完成任何复杂的任务 B. 只能完成部分复杂的任务 C. 只能完…

没通知就降公积金的脉脉,面试考什么?

写在前面 刚过去的周末,又一家神奇公司映入眼帘: 怎么说呢?自家的瓜出现在自家,至少说明脉脉没有跟微博似的限流。 自家做职场社交,就用自家帖子做全员通知,脉脉你就这么“降本”的吗?&#x1f…

【OCR识别】PaddleHub实现验证码识别

文章目录 前言无脑安装使用PaddleHub寻找预训练模型库完整代码效果图 前言 前面有篇文章介绍了 【网站验证码识别】 ,但是其是利用 tesseract 工具的命令行来实现图片内容的识别。 这几天我突然想起,大学时参加百度 AI 比赛用过其 PaddleHub 框架&…

计算机网络 应用层上 | 域名解析系统DNS 文件传输协议FTP,NFS 万维网URL HTTP HTML

文章目录 1 域名系统DNS1.1 域名vsIP?1.2 域名结构1.3 域名到IP的解析过程域名服务器类型 2 文件传送协议2.1 FTP 文件传输协议2.2 NFS 协议2.3 简单文件传送协议 TFTP 3 万维网WWW3.1 统一资源定位符URL3.2 超文本传送协议HTTP3.2.1 HTTP工作流程3.2.2 HTTP报文结构…

flask之文件管理网页(上传,下载,搜索,登录,注册) -- 翔山 第一版

前面说要做一个可以注册,登录,搜索,上传下载的网页,初版来了 第一版主代码 from flask import request, Flask, render_template, redirect, url_for, send_from_directory import bcrypt import ossavePath os.path.join(os.ge…

17个常用经典数据可视化图表与冷门图表

数据可视化是创建信息图形表示的过程。随着可视化技术的飞速发展,可以利用强大的可视化工具选择合适的数据可视化图表来展示数据。以下专业人士都应该知道的一些最重要的数据可视化图表。 常见数据可视化图表 饼图 饼图是最常见和最基本的数据可视化图表之一。饼图…

VM进行TCP/IP通信

OK就变成这样 vm充当服务端的话也是差不多的操作 点击连接 这里我把端口号换掉了因为可能被占用报错了,如果有报错可以尝试尝试换个端口号 注: 还有一个点在工作中要是充当服务器,要去网络这边看下他的ip地址 拉到最后面

DRF从入门到精通三(反序列化数据校验源码分析、断言Assert、DRF之请求、响应)

文章目录 一、反序列化数据校验源码分析二、断言Assert三、DRF之请求、响应Request类和Response类请求中的Request 能够解析前端传入的编码格式响应中的Response能够响应的编码格式 一、反序列化数据校验源码分析 反序列化数据校验,校验顺序为:先校验字段…

动物分类识别教程+分类释义+界面展示

1.项目简介 动物分类教程分类释义界面展示 动物分类是生物学中的一个基础知识,它是对动物进行分类、命名和描述的科学方法。本教程将向您介绍动物分类的基本原则和方法,并提供一些常见的动物分类释义。 动物分类的基本原则 动物分类根据动物的形态、…

redis主从复制(在虚拟机centos的docker下)

1.安装docker Docker安装(CentOS)简单使用-CSDN博客 2.编辑3个redis配置 cd /etc mkdir redis-ms cd redis-ms/ vim redis6379.conf vim redis6380.conf vim redis6381.conf# master #端口号 port 6379#设置客户端连接后进行任何其他指定前需要使用的密码 requirepass 12345…

【SpringBoot篇】解决缓存击穿问题① — 基于互斥锁方式

文章目录 🌹什么是缓存击穿🌺基于互斥锁解决问题🛸思路 🏳️‍🌈代码实现 🌹什么是缓存击穿 缓存击穿是指在使用缓存系统时,对一个热点数据的高并发请求导致缓存失效,多个请求同时访…

ESP8266网络相框采用TFT_eSPI库TJpg_Decoder库mixly库UDP库实现图片传送

使用ESP8266和TFT_ESPI模块来显示图片数据。具体来说,我们将使用ILI9431显示器作为显示设备,并通过UDP协议将图片数据从发送端传输到ESP8266。最后,我们将解析这些数据并在TFT屏幕上显示出来。在这个过程中,我们将面临一些编程挑战…

The Cherno C++笔记 03

目录 Part 07 How the C Linker Works 1.链接 2.编译链接过程中出现的错误 2.1 缺少入口函数 注意:如何区分编译错误还是链接错误 注意:入口点可以自己设置 2.2 找不到自定义函数 2.2.1缺少声明 2.2.2自定义函数与引用函数不一致 2.3 在头文件中放入定义 …

conda环境下更改虚拟环境安装路径

1 引言 在Anaconda中如果没有指定路径,虚拟环境会默认安装在anaconda所安装的目录下,但如果默认环境的磁盘空间不足,无法满足大量安装虚拟环境的需求,此时我们需要更改虚拟环境的安装路径,有以下两种方案: 方案1: 每次…

【贪心算法】之 摆动序列(中等题)

实际操作上,其实连删除的操作都不用做,因为题目要求的是最长摆动子序列的长度,所以只需要统计数组的峰值数量就可以了(相当于是删除单一坡度上的节点,然后统计长度) 这就是贪心所贪的地方,让峰…

Java设计模式之单例模式以及如何防止通过反射破坏单例模式

单例模式 单例模式使用场景 ​ 什么是单例模式?保障一个类只能有一个对象(实例)的代码开发模式就叫单例模式 ​ 什么时候使用? 工具类!(一种做法,所有的方法都是static,还有一种单…

Python命令行参数解析:原理、技巧与实践

文章目录 引言命令行参数解析原理命令行参数概述使用argparse模块解析命令行参数1. 创建ArgumentParser对象2. 添加命令行参数3. 解析命令行参数4. 可选参数action5. 参数的类型转换 实践示例总结结束语 引言 在Python中,命令行参数解析是一个重要的主题&#xff0…

【稳定检索|投稿优惠】2024年绿色能源与电网电力系统国际会议(ICGEGPS 2024)

2024年绿色能源与电网电力系统国际会议(ICGEGPS 2024) 2024 International Conference on Green Energy and Grid Power Systems(ICGEGPS) 一、【会议简介】 2024年绿色能源与电网电力系统国际会议(ICGEGPS 2024)将在宜宾盛大召开。本次会议将聚焦绿色能源与电网电力系统的最新…

Linux——缓冲区

我在上篇博客留下了一个问题,那个问题就是关于缓冲区的问题,我们发现 文件有缓冲区,语言有用户级缓冲区,那么缓冲区到底是什么?,或者该怎 么认识缓冲区?这篇文章或许会让你有所认识,…

单例模式的基本用法

单例模式是众多设计模式中的一种,那说到设计模式,我们要想知道什么是设计模式? 设计模式就是一套反复使用、多数人知晓的、经过分类、代码设计经验总结。 使用设计模式是为了可重用代码、让代码更容易被他人理解,保证代码的可靠性。毫无疑问…