文章目录
一、介绍
- 一、介绍
- 二、语法格式
- 三、命令参数
- (一)参数默认值
- (二)默认参数
- 四、支持的管理命令
- 五、参考示例
- (一)每隔两秒查看一次服务器的状态,总共重复 5 次
- (二)修改 root 密码
- (三)查看数据库服务器所有进行的进程
- (四)查看数据库服务器的状态
- (五)查看服务器扩展状态
- (六)清空日志
- (七)每秒查看一次执行的SQL语句
- (八)使用安全模式关闭数据库服务器
- (九)打印出可用变量
- (十)检查数据库服务是否可用
- (十一)查询服务器的版本
- (十二)创建数据库
- (十三)重新加载权限信息
- (十四)刷新所有表缓存,并关闭和打开 log
- (十五)删除数据库 test
mysqladmin 命令是 MySQL 服务器管理任务的客户端工具,它可以检查 MySQL 服务器的配置和当前工作状态,创建和删除数据库,创建用户和修改用户密码等操作。
二、语法格式mysqladmin [参数] [管理命令]
三、命令参数 选项说明-h , --hostMySQL服务器主机名 或 ip 地址-u , --user连接 MySQL 服务器的用户名-p , --password连接 MySQL 服务器的密码-? , --help显示帮助信息-c , --count numbernumber 是自动运行次数,设置自动运行次数,必须和 -i 一起使用-i , --sleep number间隔多长时间重复执行-P , --port指定数据库端口,优先顺序,my.cnf,$mysql_tcp_port,/etc/services,内置默认值(3306)-s , --silent无法连接到服务器时自动退出-v, --verbose写更多的信息-V, --version显示版本–bind-address绑定的IP–debug-check当程序退出时打印一些调试信息–debug-info当程序退出时打印调试信息和内存和CPU使用统计信息-f, --force不要求确认删除数据库;使用多个命令,即使发生错误也继续。-C, --compress在服务器/客户端协议中使用压缩–character-sets-dir字符集的文件目录–default-character-set设置默认字符集-b, --no-beep关闭错误提示音–protocol用于连接的协议(TCP、套接字、管道、内存)-r, --relative与-i一起使用时,显示当前值和以前值之间的差异。当前仅适用于扩展状态–secure-auth如果客户端使用旧的(4.1.1之前的)协议,则拒绝连接到服务器-S, --socket指定用于连接的套接字文件–ssl-mode指定 SSL 连接模式–ssl-caPEM格式的CA文件–ssl-capathCA目录–ssl-certPEM格式的X509证书–ssl-cipher要使用的SSL密码–ssl-keyPEM格式的X509密钥–ssl-crl证书吊销列表–ssl-crlpath证书吊销列表路径–tls-version要使用的TLS版本,允许值为:tlsv1、tlsv1.1-u, --user登录用户(如果不是当前用户)-v, --verbose写更多信息-V, --version输出版本信息并退出-E, --vertical垂直打印输出-w, --wait如果连接断开,等待并重试–connect-timeout连接超时之前等待的秒数–shutdown-timeout等待服务器关机的最大秒数–plugin-dir=name客户端插件目录–default-auth=name要使用的默认身份验证客户端插件–enable-cleartext-plugin启用/禁用明文身份验证插件–show-warnings执行完显示警告 (一)参数默认值 参数名默认值bind-address(No default value)count0forceFALSEcompressFALSEcharacter-sets-dir(No default value)default-character-setautohost(No default value)no-beepFALSEport3306relativeFALSEsecure-authTRUEsocket/data/3306/mysql.socksleep0sslTRUEssl-verify-server-certFALSEssl-ca(No default value)ssl-capath(No default value)ssl-cert(No default value)ssl-cipher(No default value)ssl-key(No default value)ssl-crl(No default value)ssl-crlpath(No default value)tls-version(No default value)user(No default value)verboseFALSEverticalFALSEconnect-timeout43200shutdown-timeout3600plugin-dir(No default value)default-auth(No default value)enable-cleartext-pluginFALSEshow-warningsFALSE (二)默认参数按顺序从以下文件中:
/etc/my.cnf
/etc/mysql/my.cnf/
/data/3306/my.cnf
~/.my.cnf
读取以下参数的值:
--print-defaults # 打印程序参数列表并退出.
--no-defaults # 不要从任何选项文件读取默认选项,登录文件除外
--defaults-file=# # 仅从给定文件中读取默认选项
--defaults-extra-file=# # 读取全局文件后读取此文件
--defaults-group-suffix=# # 同时读取带有concat(group,suffix)的组
--login-path=# # 从登录文件读取此路径
四、支持的管理命令
create databasename:创建一个新数据库
drop databasename:删除一个数据库及其所有表
extended-status:给出服务器的一个扩展状态消息,从服务器发出扩展状态消息
flush-hosts:清空所有缓存的主机
flush-logs:清空所有日志
flush-tables:清空所有表
flush-privileges:再次装载授权表(同reload)
flush-status:清除状态变量
flush-threads:清空线程缓存
flush-privileges:重新加载授权表,刷新权限(与reload加载相同)
kill id,id,...:杀死mysql线程
password [new-password]:修改用户密码
ping:检查mysqld是否活着
processlist:显示服务器中活跃线程列表
reload:重新加载授权表
refresh:清空所有表并关闭和打开日志文件
shutdown:关掉服务器
status:给出服务器的简短状态消息,从服务器发出简短的状态消息
variables:打印出可用变量
version:得到服务器的版本信息
debug:指示服务器将调试信息写入日志
start-slave:启动主从复制
stop-slave:暂停主从复制
五、参考示例
(一)每隔两秒查看一次服务器的状态,总共重复 5 次
mysqladmin -uroot -p -i 2 -c 5 status # 相当于 show status
mysqladmin -uroot -pdadong123 -i 1 status # 每隔一秒查看一次状态
(二)修改 root 密码
语法格式:
mysqladmin -u用户名 -p旧密码 password 新密码
给 root 加个密码 111111:
mysqladmin -uroot -p password '111111'
将 root 的密码改为 dadong:
mysqladmin -uroot -pdadong123 password 'dadong'
(三)查看数据库服务器所有进行的进程
获得当前数据库的连接线程信息:
[root@htlwk0001host ~]# mysqladmin -uroot -p processlist # 查看执行的SQL语句信息
[root@htlwk0001host ~]# mysqladmin -uroot -p -i 1 processlist # 每秒刷新一次
(四)查看数据库服务器的状态
mysqladmin -uroot -pdadong123 status
(五)查看服务器扩展状态
mysqladmin -uroot -pdadong123 extended-status # 等同show global status
(六)清空日志
mysqladmin -uroot -pdadong123 flush-logs
(七)每秒查看一次执行的SQL语句
mysqladmin -uroot -pdadong123 processlist -i 1
(八)使用安全模式关闭数据库服务器
mysqladmin -uroot -pdadong shutdown
(九)打印出可用变量
mysqladmin -uroot -pdadong variables # 相当于show variables
(十)检查数据库服务是否可用
[root@htlwk0001host ~]# mysqladmin -uroot -p ping
Enter password:
mysqld is alive
(十一)查询服务器的版本
[root@htlwk0001host ~]# mysqladmin -uroot -p version
Enter password:
mysqladmin Ver 8.42 Distrib 5.7.31, for Linux on x86_64
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Server version 5.7.31
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/lib/mysql/mysql.sock
Uptime: 1 hour 52 min 59 sec
Threads: 21 Questions: 784 Slow queries: 0 Opens: 105 Flush tables: 1 Open tables: 98 Queries per second avg: 0.115
(十二)创建数据库
[root@DB02 ~]# mysqladmin -uroot -pdadong123 create lili
Warning: Using a password on the command line interface can be insecure.
(十三)重新加载权限信息
mysqladmin -uroot -p reload
(十四)刷新所有表缓存,并关闭和打开 log
mysqladmin -uroot -p refresh
(十五)删除数据库 test
mysqladmin -uroot -p drop test