MySQL

发布于:2025-04-01 ⋅ 阅读:(63) ⋅ 点赞:(0)

1.MySQL程序概览

在Linux安装好MySQL之后,通过Xshell来操作Linux系统.首先我们找到安装MySQL的路径(一般都是/usr/bin/mysql).查看都安装了哪些MySQL程序.(使用命令: ll /usr/bin/mysql *).


我们说MySQL是一个 客户端-服务器程序

上述这些mysql程序我们并不是都要掌握,我们只需要掌握一些常用的即可

程序名 作用
mysqld
MySQL的守护进程即 MySQL 服务器,要使⽤MySQL 服务器 mysqld必须正在运⾏状态
mysql MySQL的客户端程序,⽤于交互式输⼊ SQL 语句或以批处理模式从⽂件执⾏SQL的命令⾏
⼯具
mysqlcheck 用于检查,修复,分析和优化表的表维护客户端
mysqldump
将 MySQL 数据库转储到 SQL、⽂本或 XML ⽂件中的客⼾端
mysqlimport
将⽂本⽂件导⼊到表的客⼾端⼯具
mysqladmin
执⾏管理操作的客⼾端,例如创建或删除数据库、重新加载授权表、将表刷新到磁盘以及重新打开⽇志⽂件。Mysqladmin还可以⽤于从服务器检索版本、进程和状态信息
mysqlshow
显⽰数据库、表、列和索引信息的客⼾端
mysqldumpslow
⽤于读取和汇总慢速查询⽇志内容的实⽤程序
mysqlbinlog
从⼆进制⽇志中读取SQL语句的实⽤程序。mysqlbinlog ⽂件中包含的已执⾏SQL语句的⽇志,可⽤于从崩溃中恢复数据
mysqlslap
客⼾端负载⼯具,模拟多个客⼾端同时访问MySQL服务器,并报告每个阶段的使⽤时间。

2.MySQL 客户端程序

2.1 mysql客户端

mysql是⼀个简单的 SQL shell, 可以输⼊命令和执⾏SQL语句,当执⾏SQL语句时,查询结果以
ASCII 表格式显⽰
# 连接MySQL服务器,⻓选项格式
mysql --user=user_name --password [db_name]
# 短选项格式
mysql -uuser_name -p [db_name]
# 输⼊密码
Enter password: your_password

选项:就是当我们操作mysql的时候可以指定一些选项.服务器选项主要用于控制 MySQL 服务器的启动与运行,可在启动服务器时通过命令行参数设置,也能在配置文件里预先设定。

2.2 mysql客户端常用选项

选项--长格式 短格式 说明
--host -h
--host= host_name , -h host_name
连接到指定主机上的 MySQL 服务(指定IP)
--port -P(大写)
--port= port_num , -P port_num
TCP/IP 连接使⽤的端⼝号
--user -u
--user= user_name , -u user_name
⽤于连接到MySQL 服务器的⽤⼾名

--password

-p(小写)
--password[= password ] , -p[ password ]
⽤于连接到MySQL 服务器的密码。可选,如果没有给出, 会提⽰⽤⼾输⼊
--delimiter 设置语句分隔符,mysql默认是  ;
--version -V(大写)
--version , -V
显⽰版本信息并退出。
--help -?
--help , -?
显⽰帮助信息并退出。

●1.- -host 

短格式为:  -h,

这个选项用于指定要连接哪台主机


 ●2.- -port

短格式: -P(大写)

,指定数据库使用的端口号


●3 - -user

短格式: -u   

表示是哪个用户要登录mysql.下方表示root用户登录


●4 - -password

短格式: -p,

表示用户登录输入的密码

也可以直接在 -p后面直接输入密码 ,但是会不安全


●5. - -delimiter

短格式:无.

我们知道mysql中写完SQL语句之后要加一个分号(;),表示当前语句结束,我们这里可以通过这个选项来修改我们的结束分隔符


●6. - -version

短格式:-V(大写)

显示版本信息并且退出


●- -help

短格式:-?

显示帮助信息


其实MySQL官网上还有很多选项,这里就不一一列举了,如果需要去官网查询使用即可.


2.3 在命令⾏中使⽤选项

命令⾏中指定选项遵循以下规则:
选项应在程序名之后给出

1.选项以单破折号" - "或双破折号" -- "号开头, - 表⽰短格式, -- 表⽰⻓格式,例如:-?和 -

-help 都表⽰MySQL 程序显⽰他的帮助消息
mysql  -?
mysql  --help

2.选项名称区分⼤⼩写。 -v -V 都是合法的,但含义不同,它们分别是 --verbose(尽可能多的显示结果) -- version(显示版本) 选项的相应缩写形式

# 以下两个等价
mysqld --verbose --help
mysqld -v -?

# 以下两个等价
mysql --version
mysql -V

3.某些选项需要在后⾯指定⼀个值。例如, -h 127.0.0.1 --host=127.0.0.1 表⽰向客

⼾端程序指定 MySQL 服务器主机
mysql -h 127.0.0.1
msyql --host=127.0.0.1

4.对于带值的⻓格式选项,通常⽤ = 符号分隔选项名称和值。对于带值的短选项,选项值可以紧跟在选项之后,也可以⽤空格隔开,例如: --host=127.0.0.1 -h127.0.0.1 -h 127.0.0.1 是等价的。 但是对于密码选项的短格式,如果要指定密码,选项与值之间不能有空,如下所⽰

mysql -ptest # test表⽰密码,但没有指定要访问的数据库
mysql -p test # test 表⽰指定了访问的数据库,但没有指定密码
因为在命令行中  -p后面要是有空格会认为这是一个数据库,而不是认为这是密码,因为命令行中可以指定数据库,如果-p 和密码中间有空格,系统就认为这是一个数据库

5.在选项名称中,破折号 ( - ) 和下划线 ( _ ) 在⼤多数情况下可以互换使⽤,但前导破折号不能转

为下划线,例如: --skip-grant-tables --skip_grant_tables 是等价的

6.在命令⾏中包含空格的选项值必须⽤引号引起来。例如, --execute (or -e ) 选项与mysql⼀

起使⽤时,表⽰将⼀个或多个 SQL 语句发送给服务器执⾏并显⽰结果(比较常用)
这样即使我们不登录MySQL也可以拿到结果.

3.选项(配置)文件

⼤多数 MySQL 程序都可以从选项⽂件(配置⽂件)中读取启动选项。可以在选项⽂件中指定常⽤选项,这样就不⽤在每次运⾏程序时都在命令⾏中输⼊它们。⼤部分选项⽂件都是纯⽂本格式,可以使⽤任何⽂本编辑器创建.

3.1 使用方法

选项 --defaults-file 可以指定要使⽤的选项⽂件,客⼾端程序会读取并应⽤选项⽂件中的相关
配置
# Linux
mysql --defaults-file=/etc/mysql/my.cnf -uroot -p
# windows下
mysql "--defaults-file=C:\ProgramData\MySQL\MySQL Server 8.0\my.ini" -uroot -p

Linux的MySQL一般在 /etc/mysql路径下.

3.2选项文件位置以及加载顺序

[client] MySQL发⾏版中所有客⼾端程序都会读取并应⽤这个组下的选项(除了mysqld),
在这个组下可以指定适⽤于所有客⼾端程序的通⽤选项,例如配置⽤⼾名和密码(但要确保只有
⾃⼰才可以访问这个⽂件以防⽌密码泄漏)
# 在当前⽤⼾的home⽬录下创建.my.cnf,并在[client]写⼊公共配置
# 这⾥主要设置⽤了主机、端⼝、⽤⼾名、密码
root@guangchen-vm:~# vim .my.cnf
[client]
host=127.0.0.1
port=3306
user=root
password=123456
可以通过[ 客⼾端程序名 ] 的形式为不同的客⼾端程序指定选项,例如 [mysql] ,当运⾏
mysql程序时会读取并应⽤该组下的配置,如果选项名与 [client] 重复, [client] 中的
选项将会被覆盖,因为client的优先级比较高.
root@guangchen-vm:~# cat .my.cnf 
[client]
host=127.0.0.1
port=3306
user=root
password=123456
# 设置为必须输⼊密码
[mysql]
password

4.MySQL客户端命令

使⽤mysql客⼾端程序连接到数据库服务器之后,可以发送SQL语句到服务器执⾏,并以 ";"(分
号)、\g 或 \G结束
分号(;)结束
\g结束
\G结束

当前模式下MySQL还有一组自己的命令,我们可以使用help或者\h查看


4.1 connect(\r) 重新连接服务器

4.2 status(\s) 查看服务器状态

4.3 重新制定SQL语句结束标识符

前面我们在命令行使用过,这次是在mysql命令中使用

4.4 exit和quit (退出mysql客户端程序)

4.5 tee(\t)将执行结果保存在一个文件中

4.6 no tee

这个指的是不再将结果存储在指定文件中,这个命令没有参数

4.7 prompt (\R) 修改提示符


4.8 将本地数据库提取到Linux上

这里使用source(\.)命令.