mysqladmin 命令是一个执行 mysqld 服务管理操作的客户端程序,它可以用来检查服务器的配置和当前状态、创建和删除数据库等等。
mysqladmin [OPTIONS] command command....
下面是 mysqladmin 命令的可用选项,如下:
--bind-address=name 要绑定到的 IP 地址。
-c, --count=# 要进行的迭代次数,这仅适用于 -i(--sleep)。
-#, --debug[=#] 这是一个非调试版本,捕获并退出。
--debug-check 这是一个非调试版本,捕获并退出。
--debug-info 这是一个非调试版本,捕获并退出。
-f, --force 在删除数据库时不要求确认;对于多个命令,即使发生错误也要继续。
-C, --compress 在服务器/客户端协议中使用压缩技术。
--character-sets-dir=name 字符集文件的目录。
--default-character-set=name 设置默认字符集。
-?, --help 显示此帮助并退出。
-h, --host=name 连接到主机。
-b, --no-beep 关掉出错时的提示音。
-p, --password[=name] 连接到服务器时使用的密码。如果没有给出密码,就会从tty上询问。
-P, --port=# 用于连接的端口号,或默认为 0,依次为 my.cnf、$MYSQL_TCP_PORT、/etc/services、内置默认(3306)。
--protocol=name 连接使用的协议(tcp、socket、pipe、memory)。
-r, --relative 当与 -i 一起使用时,显示当前值和之前值之间的差异。目前只适用于扩展状态。
--secure-auth 如果客户端使用旧的(4.1.1之前的)协议,则拒绝其连接到服务器,已弃用,总是为 TRUE。
-s, --silent 如果不能连接到服务器,则默默退出。
-S, --socket=name 用于连接的套接字文件。
-i, --sleep=# 反复执行命令,中间有一个休眠期。
--ssl-mode=name SSL连接模式。
--ssl 已废弃。使用 --ssl-mode 代替 (默认为打开,使用 --skip-ssl 来禁用)
--ssl-verify-server-cert 已废弃。使用 --ssl-mode=VERIFY_IDENTITY 代替。
--ssl-ca=name PEM 格式的 CA 文件。
--ssl-capath=name CA 目录。
--ssl-cert=name PEM 格式的 X509 证书。
--ssl-cipher=name 要使用的 SSL 密码。
--ssl-key=name PEM 格式的 X509 密钥。
--ssl-crl=name 证书吊销列表。
--ssl-crlpath=name 证书撤销列表路径。
--tls-version=name 要使用的 TLS 版本,允许的值是:TLSv1, TLSv1.1, TLSv1.2
--server-public-key-path=name PEM 格式的服务器公共 RSA 密钥的文件路径。
--get-server-public-key 获取服务器公钥
-u, --user=name 如果不是当前用户,用于登录的用户。
-v, --verbose 显示详细信息
-V, --version 输出版本信息并退出。
-E, --vertical 垂直打印输出。与 --relative 类似,但垂直打印输出。
-w, --wait[=#] 等待,如果连接中断则重试。
--connect-timeout=#
--shutdown-timeout=#
--plugin-dir=name 客户端插件的目录。
--default-auth=name 要使用的默认认证客户端插件。
--enable-cleartext-plugin 启用/停用明文认证插件。
--show-warnings 执行后显示警告
变量名 值 (读取选项后)
--------------------------------- ----------------------------------------
bind-address (No default value)
count 0
force FALSE
compress FALSE
character-sets-dir (No default value)
default-character-set auto
host (No default value)
no-beep FALSE
port 0
relative FALSE
secure-auth TRUE
socket (No default value)
sleep 0
ssl TRUE
ssl-verify-server-cert FALSE
ssl-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)
server-public-key-path (No default value)
get-server-public-key FALSE
user (No default value)
verbose FALSE
vertical FALSE
connect-timeout 43200
shutdown-timeout 3600
plugin-dir (No default value)
default-auth (No default value)
enable-cleartext-plugin FALSE
show-warnings FALSE
默认选项按照给定的顺序从以下文件中读取:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf /home/hxstrive/mysql5.7/my.cnf ~/.my.cnf
读取以下组:mysqladmin client
可以给出以下选项作为第一个参数:
--print-defaults 打印程序参数列表并退出。
--no-defaults 不要从任何选项文件中读取默认选项,登录文件除外。
--defaults-file=# 仅从给定文件 # 中读取默认选项。
--defaults-extra-file=# 读取全局文件后读取此文件。
--defaults-group-suffix=# 还读取带有 concat(组、后缀)的组
--login-path=# 从登录文件中读取此路径。
mysqladmin 还支持以下的一些子命令,可以同时使用一项或多项子命令(命令可以缩写):
create databasename 创建新数据库
debug 指示服务器将调试信息写入日志
drop databasename 删除数据库及其所有表
extended-status 提供来自服务器的扩展状态消息
flush-hosts 刷新所有缓存的主机
flush-logs 刷新所有日志
flush-status 清除状态变量
flush-tables 刷新所有表
flush-threads 刷新线程缓存
flush-privileges 重新加载授权表(与重新加载相同)
kill id,id,... 杀死 mysql 线程
password [new-password] 将旧密码更改为当前格式的新密码
ping 检查 mysqld 是否处于活动状态
processlist 显示服务器中的活动线程列表
reload 重新加载授权表
refresh 刷新所有表并关闭和打开日志文件
shutdown 关闭服务器
status 提供来自服务器的简短状态消息
start-slave 启动 slave
stop-slave 停止 slave
variables 打印可用变量
version 从服务器获取版本信息
(1)查看 mysqld 服务版本信息,命令如下:
[hxstrive@localhost ~]$ mysqladmin -h 127.0.0.1 -u root -p version Enter password: mysqladmin Ver 8.42 Distrib 5.7.40, for linux-glibc2.12 on x86_64 Copyright (c) 2000, 2022, Oracle and/or its affiliates. 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.40 Protocol version 10 Connection 127.0.0.1 via TCP/IP TCP port 3306 Uptime: 1 min 18 sec Threads: 1 Questions: 2 Slow queries: 0 Opens: 108 Flush tables: 1 Open tables: 26 Queries per second avg: 0.025
(2)查看 mysqld 服务器状态信息,命令如下:
[hxstrive@localhost ~]$ mysqladmin -h 127.0.0.1 -u root -p status Enter password: Uptime: 150 Threads: 1 Questions: 4 Slow queries: 0 Opens: 108 Flush tables: 1 Open tables: 26 Queries per second avg: 0.026
(3)显示服务器中的活动线程列表,命令如下:
[hxstrive@localhost ~]$ mysqladmin -h 127.0.0.1 -u root -p processlist Enter password: +----+------+-----------------+----+---------+------+----------+------------------+ | Id | User | Host | db | Command | Time | State | Info | +----+------+-----------------+----+---------+------+----------+------------------+ | 7 | root | localhost:34626 | | Query | 0 | starting | show processlist | +----+------+-----------------+----+---------+------+----------+------------------+