mysql客户端:
mysql工具是MySQL官方提供的连接工具,用户可以通过mysql连接到mysqld上进行一系列的SQL操作。mysql工具有两种模式:交互模式和命令行模式。交互模式指令需要连接到mysql服务器下达,命令行模式通过特定(-e)参数读取shell命令行传递的指令到服务器。
mysql客户端的命令行参数:
mysql [OPTIONS] [database]
-h, --help 显示帮助信息
-e, --execute=name 执行指定命令,命令行模式
-u, --user=name 指定连接的用户
-h, --host=name 指定主机名
-p, --password 指定密码
-P, --port 指定端口
mysql交互模式常用指令:
mysql的交互模式的指令类型有两种:客户端指令和服务器端指令。其中客户端指令是mysql工具的内置指令,服务器端指令则是mysqld服务提供的操作指令,我们仅介绍客户端指令。
help (\h) 获取帮助
connect (\r) 重新连接
delimiter (\d) 设置服务端语句的结束符,默认是分号
ego (\G) 发送指令到服务器,等于语句结束符,但是以列的方式显示
exit (\q) 退出mysql客户端
go (\g) 发送指令到服务器,等于语句结束符
quit (\q) 退出Mysql
source (\.) 执行系统上的sql脚本
status (\s) 获取MySQL服务的基本信息
system (\!) 执行shell命令
tee (\T) 分流输出
use (\u) 选定使用的数据库
charset (\C) 切换字符集
warnings (\W) 语句的警告信息显示出来
nowarning (\w) 不显示语句的警告信息
注:服务端指令执行需要指定结束符,而mysql不需要,默认结束符是分号。
mysql交互模式快捷键:
Ctrl+w:删除光标之前的单词
Ctrl+u:删除光标之前至命令行首的所有内容
Ctrl+y:粘贴此前删除的内容
Ctrl+a:移动光标至行首
Ctrl+e:移动光标至行尾
mysqladmin客户端:
与mysql不同的是,mysqladmin是MySQL官方提供的shell命令行工具(mysql是连接工具),其参数都需要在shell命令行上执行。mysqladmin提供了两类参数:连接参数和命令参数,连接参数用来指定连接信息,命令参数则是服务命令。
mysqladmin常用连接参数:
mysqladmin [OPTIONS] command command....
OPTIONS:
-u, --user=name 指定用户名
-h, --host=name 指定主机名
-p, --password 指定密码
-P, --port 指定端口
mysqladmin常用命令参数:
mysqladmin [OPTIONS] COMMAND COMMAND....
COMMAND:
create [DB_NAME]
drop [DB_NAME]
debug 打开调试日志并记录于error log中
status 输出服务器的基本状态信息
--sleep:status的子参数,多久刷新一次
--count:status的子参数,显示的批次
extended-status 显示扩展的状态信息,等于:SHOW GLOBAL STATUS;
flush-hosts 清空主机相关的缓存,包括:DNS解析缓存、连接错误次数过多而被拒绝访问mysqld的主机等
flush-logs 关闭日志,打开新日志对二进制、中继日志进行滚动
flush-privileges 刷新配置
flush-status 重置状态变量
flush-tables 关闭当前打开的表文件句柄
flush-threads 清空线程缓存池
kill 杀死指定的线程
password 修改指定用户的密码
ping 探测服务器是否在线
processlist 显示mysql线程列表
reload 相当于flush-privileges
refresh 相当于同时使用flush-logs和flush-hosts
shutdown 关闭mysql服务
start-slave 启动从服务器线程
stop-slave 关闭从服务器线程
variables 输出mysqld的服务器变量
version 显示mysql服务器版本