mysqladmin是执行管理操作的客户端。您可以使用它来检查服务器的配置和当前状态、创建和删除数据库等等。
像这样调用mysqladmin:
mysqladmin [options] command [command-arg] [command [command-arg]] ...
mysqladmin支持以下命令。一些命令在命令名称后带有一个参数。
创建一个名为
db_name
.告诉服务器将调试信息写入错误日志。连接的用户必须具有
SUPER
权限。此信息的格式和内容可能会发生变化。这包括有关事件调度程序的信息。请参阅 第 23.4.5 节,“事件调度程序状态”。
删除名为的数据库
db_name
及其所有表。显示服务器状态变量及其值。
刷新主机缓存中的所有信息。请参阅 第 5.1.11.2 节,“DNS 查找和主机缓存”。
刷新所有日志。
mysqladmin flush-logs命令允许提供可选 的日志类型,以指定要刷新的日志。在命令之后,
flush-logs
您可以提供以下一种或多种日志类型的空格分隔 列表:binary
、、、、、、、 。这些对应于可以为SQL 语句指定的日志类型。engine
error
general
relay
slow
FLUSH LOGS
重新加载授权表(与 相同
reload
)。清除状态变量。
刷新所有表。
刷新线程缓存。
杀死服务器线程。如果给出了多个线程 ID 值,则列表中不能有空格。
要终止属于其他用户的线程,连接的用户必须具有
SUPER
特权。这类似于
password
命令,但使用旧的(4.1 之前的)密码哈希格式存储密码。(请参阅第 6.1.2.4 节,“MySQL 中的密码散列”。)MySQL 5.7.5 中删除了此命令。
设置新密码。这会将密码更改
new_password
为您使用mysqladmin连接到服务器的帐户。因此,下次您 使用同一帐户 调用mysqladmin (或任何其他客户端程序)时,您必须指定新密码。警告使用mysqladmin 设置密码 应该被认为是不安全的。在某些系统上,您的密码对系统状态程序(例如ps )可见,其他用户可能会调用这些程序来显示命令行。MySQL 客户端通常在初始化序列期间用零覆盖命令行密码参数。但是,仍然有一个短暂的时间间隔,在此期间该值是可见的。此外,在某些系统上,这种覆盖策略是无效的,密码仍然对ps可见. (SystemV Unix 系统和其他系统可能会遇到这个问题。)
如果该
new_password
值包含空格或您的命令解释器特有的其他字符,您需要将其括在引号内。在 Windows 上,一定要使用双引号而不是单引号;单引号不会从密码中删除,而是被解释为密码的一部分。例如:mysqladmin password "my new password"
命令后可以省略新密码
password
。在这种情况下, mysqladmin会提示输入密码值,这使您能够避免在命令行上指定密码。仅当mysqladmin命令行password
上的最后一个命令时才应省略密码值。否则,将下一个参数作为密码。警告--skip-grant-tables
如果服务器是使用该选项 启动的,请不要使用此命令 。不应用密码更改。即使您在同一命令行上的命令之前password
重新flush-privileges
启用授权表也是如此,因为刷新操作发生在您连接之后。但是,您可以使用 mysqladmin flush-privileges重新启用授权表,然后使用单独的 mysqladmin password命令更改密码。检查服务器是否可用。如果服务器正在运行,则mysqladmin的返回状态为 0,否则为 1。即使出现诸如 之类的错误,这也是 0
Access denied
,因为这意味着服务器正在运行但拒绝连接,这与服务器未运行不同。显示活动服务器线程的列表。这就像
SHOW PROCESSLIST
语句的输出。如果--verbose
给出该选项,则输出类似于SHOW FULL PROCESSLIST
. (请参阅 第 13.7.5.29 节,“SHOW PROCESSLIST 语句”。)重新加载授权表。
刷新所有表并关闭和打开日志文件。
停止服务器。
在副本服务器上开始复制。
显示简短的服务器状态消息。
停止副本服务器上的复制。
显示服务器系统变量及其值。
显示来自服务器的版本信息。
所有命令都可以缩短为任何唯一的前缀。例如:
$> mysqladmin proc stat
+----+-------+-----------+----+---------+------+-------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+-------+-----------+----+---------+------+-------+------------------+
| 51 | jones | localhost | | Query | 0 | | show processlist |
+----+-------+-----------+----+---------+------+-------+------------------+
Uptime: 1473624 Threads: 1 Questions: 39487
Slow queries: 0 Opens: 541 Flush tables: 1
Open tables: 19 Queries per second avg: 0.0268
mysqladmin status命令结果显示以下值 :
MySQL 服务器已运行的秒数。
活动线程(客户端)的数量。
自服务器启动以来来自客户端的问题(查询)数。
花费超过
long_query_time
秒数的查询数。请参阅第 5.4.5 节,“慢速查询日志”。服务器已打开的表数。
flush-*
服务器已执行的、refresh
和reload
命令的 数量。当前打开的表数。
如果在使用 Unix 套接字文件连接到本地服务器时 执行mysqladmin shutdown , mysqladmin会等待服务器的进程 ID 文件被删除,以确保服务器已正确停止。
mysqladmin支持以下选项,可以在命令行或
选项文件的组中指定[mysqladmin]
。[client]
有关 MySQL 程序使用的选项文件的信息,请参阅第 4.2.2.2 节,“使用选项文件”。
表 4.13 mysqladmin 选项
选项名称 | 描述 | 介绍 | 弃用 |
---|---|---|---|
--绑定地址 | 使用指定的网络接口连接到 MySQL 服务器 | ||
- 压缩 | 压缩客户端和服务器之间发送的所有信息 | ||
--连接超时 | 连接超时前的秒数 | ||
- 数数 | 重复命令执行的迭代次数 | ||
--调试 | 写调试日志 | ||
--调试检查 | 程序退出时打印调试信息 | ||
- 调试信息 | 程序退出时打印调试信息、内存和 CPU 统计信息 | ||
--default-auth | 要使用的身份验证插件 | ||
--默认字符集 | 指定默认字符集 | ||
--defaults-extra-file | 除了通常的选项文件外,还读取命名的选项文件 | ||
--defaults-文件 | 只读命名选项文件 | ||
--defaults-group-suffix | 选项组后缀值 | ||
--启用明文插件 | 启用明文身份验证插件 | ||
- 力量 | 即使出现 SQL 错误也继续 | ||
--get-server-public-key | 从服务器请求 RSA 公钥 | 5.7.23 | |
- 帮助 | 显示帮助信息并退出 | ||
- 主持人 | MySQL 服务器所在的主机 | ||
--登录路径 | 从 .mylogin.cnf 读取登录路径选项 | ||
--无哔声 | 发生错误时不发出蜂鸣声 | ||
--no-defaults | 不读取选项文件 | ||
- 密码 | 连接到服务器时使用的密码 | ||
- 管道 | 使用命名管道连接到服务器(仅限 Windows) | ||
--插件目录 | 安装插件的目录 | ||
- 港口 | 用于连接的 TCP/IP 端口号 | ||
--print-defaults | 打印默认选项 | ||
- 协议 | 使用的传输协议 | ||
- 相对的 | 与 --sleep 选项一起使用时显示当前值和先前值之间的差异 | ||
--secure-auth | 不要以旧的(pre-4.1)格式向服务器发送密码 | 是的 | |
--server-public-key-path | 包含 RSA 公钥的文件的路径名 | 5.7.23 | |
--shared-memory-base-name | 共享内存连接的共享内存名称(仅限 Windows) | ||
--显示警告 | 语句执行后显示警告 | ||
--关机超时 | 等待服务器关闭的最大秒数 | ||
- 沉默的 | 静音模式 | ||
- 睡觉 | 重复执行命令,中间休眠 delay 秒 | ||
- 插座 | 要使用的 Unix 套接字文件或 Windows 命名管道 | ||
--ssl | 启用连接加密 | ||
--ssl-ca | 包含可信 SSL 证书颁发机构列表的文件 | ||
--ssl-capath | 包含受信任的 SSL 证书颁发机构证书文件的目录 | ||
--ssl证书 | 包含 X.509 证书的文件 | ||
--ssl密码 | 连接加密的允许密码 | ||
--ssl-crl | 包含证书吊销列表的文件 | ||
--ssl-crlpath | 包含证书吊销列表文件的目录 | ||
--ssl-密钥 | 包含 X.509 密钥的文件 | ||
--ssl模式 | 连接到服务器的所需安全状态 | 5.7.11 | |
--ssl-verify-server-cert | 根据服务器证书公用名身份验证主机名 | ||
--tls-版本 | 加密连接允许的 TLS 协议 | 5.7.10 | |
- 用户 | 连接到服务器时使用的 MySQL 用户名 | ||
--冗长 | 详细模式 | ||
- 版本 | 显示版本信息并退出 | ||
- 垂直的 | 垂直打印查询输出行(每列值一行) | ||
- 等待 | 如果无法建立连接,请等待并重试而不是中止 |
--help
,-?
显示帮助信息并退出。
在具有多个网络接口的计算机上,使用此选项来选择用于连接到 MySQL 服务器的接口。
安装字符集的目录。请参阅 第 10.15 节,“字符集配置”。
--compress
,-C
如果可能,压缩客户端和服务器之间发送的所有信息。请参阅 第 4.2.6 节,“连接压缩控制”。
连接超时前的最大秒数。默认值为 43200(12 小时)。
--count=
,N
-c
N
--sleep
如果给出选项,则 重复命令执行的迭代次数。--debug[=
,debug_options
]-# [
debug_options
]写调试日志。典型的
debug_options
字符串是 . 默认值为 。d:t:o,
file_name
d:t:o,/tmp/mysqladmin.trace
仅当 MySQL 是使用
WITH_DEBUG
. Oracle 提供的 MySQL 发布二进制文件不是 使用此选项构建的。程序退出时打印一些调试信息。
仅当 MySQL 是使用
WITH_DEBUG
. Oracle 提供的 MySQL 发布二进制文件不是 使用此选项构建的。程序退出时打印调试信息以及内存和 CPU 使用统计信息。
仅当 MySQL 是使用
WITH_DEBUG
. Oracle 提供的 MySQL 发布二进制文件不是 使用此选项构建的。关于使用哪个客户端身份验证插件的提示。请参阅第 6.2.13 节,“可插入身份验证”。
--default-character-set=
charset_name
用作
charset_name
默认字符集。请参阅第 10.15 节,“字符集配置”。--defaults-extra-file=
file_name
在全局选项文件之后但(在 Unix 上)在用户选项文件之前读取此选项文件。如果该文件不存在或无法访问,则会发生错误。如果
file_name
不是绝对路径名,则将其解释为相对于当前目录。有关此选项和其他选项文件选项的其他信息,请参阅第 4.2.2.3 节,“影响选项文件处理的命令行选项”。
仅使用给定的选项文件。如果该文件不存在或无法访问,则会发生错误。如果
file_name
不是绝对路径名,则将其解释为相对于当前目录。例外:即使有
--defaults-file
,客户端程序也会读取.mylogin.cnf
.有关此选项和其他选项文件选项的其他信息,请参阅第 4.2.2.3 节,“影响选项文件处理的命令行选项”。
不仅要阅读通常的选项组,还要阅读具有通常名称和后缀
str
. 例如, mysqladmin通常会读取[client]
和[mysqladmin]
组。如果此选项作为 给出--defaults-group-suffix=_other
, 则mysqladmin还会读取[client_other]
和[mysqladmin_other]
组。有关此选项和其他选项文件选项的其他信息,请参阅第 4.2.2.3 节,“影响选项文件处理的命令行选项”。
启用
mysql_clear_password
明文身份验证插件。(请参阅 第 6.4.1.6 节,“客户端明文可插入身份验证”。)--force
,-f
不要要求确认命令。对于多个命令,即使发生错误也要继续。
drop
db_name
从服务器请求基于 RSA 密钥对的密码交换所需的公钥。此选项适用于使用
caching_sha2_password
身份验证插件进行身份验证的客户端。对于该插件,除非请求,否则服务器不会发送公钥。对于未使用该插件进行身份验证的帐户,将忽略此选项。如果不使用基于 RSA 的密码交换,它也会被忽略,就像客户端使用安全连接连接到服务器时的情况一样。如果 给出并指定一个有效的公钥文件,它优先于 .
--server-public-key-path=
file_name
--get-server-public-key
有关
caching_sha2_password
插件的信息,请参阅 第 6.4.1.4 节,“缓存 SHA-2 可插入身份验证”。该
--get-server-public-key
选项是在 MySQL 5.7.23 中添加的。--host=
,host_name
-h
host_name
连接到给定主机上的 MySQL 服务器。
从登录路径文件中指定的登录路径读取选项
.mylogin.cnf
。“ 登录路径”是一个选项组,其中包含指定要连接到哪个 MySQL 服务器以及要以哪个帐户进行身份验证的选项。要创建或修改登录路径文件,请使用 mysql_config_editor实用程序。请参阅 第 4.6.6 节,“mysql_config_editor — MySQL 配置实用程序”。有关此选项和其他选项文件选项的其他信息,请参阅第 4.2.2.3 节,“影响选项文件处理的命令行选项”。
--no-beep
,-b
抑制默认情况下针对连接服务器失败等错误发出的警告蜂鸣声。
不要读取任何选项文件。如果程序启动因从选项文件中读取未知选项而失败,
--no-defaults
可用于防止它们被读取。例外情况是
.mylogin.cnf
文件在所有情况下都会被读取(如果存在)。这允许以比在命令行上更安全的方式指定密码,即使在--no-defaults
使用 时也是如此。要创建.mylogin.cnf
,请使用 mysql_config_editor实用程序。请参阅 第 4.6.6 节,“mysql_config_editor — MySQL 配置实用程序”。有关此选项和其他选项文件选项的其他信息,请参阅第 4.2.2.3 节,“影响选项文件处理的命令行选项”。
--password[=
,password
]-p[
password
]用于连接到服务器的 MySQL 帐户的密码。密码值是可选的。如果没有给出, mysqladmin会提示输入一个。如果给定,则后面 的密码之间 不能有空格。如果未指定密码选项,则默认为不发送密码。
--password=
-p
在命令行上指定密码应该被认为是不安全的。为避免在命令行中提供密码,请使用选项文件。请参阅 第 6.1.2.1 节,“密码安全的最终用户指南”。
要明确指定没有密码并且 mysqladmin不应提示输入密码,请使用该
--skip-password
选项。--pipe
,-W
在 Windows 上,使用命名管道连接到服务器。仅当服务器启动时
named_pipe
启用了支持命名管道连接的系统变量时,此选项才适用。此外,进行连接的用户必须是named_pipe_full_access_group
系统变量指定的 Windows 组的成员。在其中查找插件的目录。如果该
--default-auth
选项用于指定身份验证插件但 mysqladmin未找到它,请指定此选项。请参阅 第 6.2.13 节,“可插入身份验证”。--port=
,port_num
-P
port_num
对于 TCP/IP 连接,要使用的端口号。
打印程序名称和它从选项文件中获取的所有选项。
有关此选项和其他选项文件选项的其他信息,请参阅第 4.2.2.3 节,“影响选项文件处理的命令行选项”。
--protocol={TCP|SOCKET|PIPE|MEMORY}
用于连接到服务器的传输协议。当其他连接参数通常导致使用您想要的协议以外的协议时,它很有用。有关允许值的详细信息,请参阅 第 4.2.5 节“连接传输协议”。
--relative
,-r
--sleep
与选项 一起使用时显示当前值和先前值之间的差异 。此选项仅适用于extended-status
命令。显示因执行发送到服务器的语句而产生的警告。
不要以旧的(pre-4.1)格式向服务器发送密码。这会阻止除使用较新密码格式的服务器之外的连接。
从 MySQL 5.7.5 开始,此选项已弃用;希望在未来的 MySQL 版本中将其删除。它始终处于启用状态,尝试禁用它 (
--skip-secure-auth
,--secure-auth=0
) 会产生错误。在 MySQL 5.7.5 之前,此选项默认启用,但可以禁用。笔记使用 pre-4.1 哈希方法的密码不如使用本机密码哈希方法的密码安全,应避免使用。4.1 之前的密码已弃用,MySQL 5.7.5 中删除了对它们的支持。有关帐户升级说明,请参阅 第 6.4.1.3 节,“从 4.1 版之前的密码哈希和 mysql_old_password 插件迁移”。
--server-public-key-path=
file_name
PEM 格式文件的路径名,其中包含服务器所需的公钥客户端副本,用于基于 RSA 密钥对的密码交换。此选项适用于使用
sha256_password
或caching_sha2_password
身份验证插件进行身份验证的客户端。对于未使用其中一个插件进行身份验证的帐户,将忽略此选项。如果不使用基于 RSA 的密码交换,它也会被忽略,就像客户端使用安全连接连接到服务器时的情况一样。如果 给出并指定一个有效的公钥文件,它优先于 .
--server-public-key-path=
file_name
--get-server-public-key
对于
sha256_password
,此选项仅适用于使用 OpenSSL 构建 MySQL 的情况。有关插件
sha256_password
和caching_sha2_password
插件的信息,请参阅 第 6.4.1.5 节,“SHA-256 可插入身份验证”和 第 6.4.1.4 节,“缓存 SHA-2 可插入身份验证”。该
--server-public-key-path
选项是在 MySQL 5.7.23 中添加的。--shared-memory-base-name=
name
在 Windows 上,用于使用共享内存与本地服务器建立连接的共享内存名称。默认值为
MYSQL
。共享内存名称区分大小写。仅当服务器启动时
shared_memory
启用了支持共享内存连接的系统变量时,此选项才适用。等待服务器关闭的最大秒数。默认值为 3600(1 小时)。
--silent
,-s
如果无法建立与服务器的连接,则静默退出。
--sleep=
,delay
-i
delay
重复执行命令,
delay
中间休眠几秒钟。该--count
选项确定迭代次数。如果--count
没有给出, mysqladmin会无限期地执行命令直到被中断。--socket=
,path
-S
path
对于与 的连接
localhost
,要使用的 Unix 套接字文件,或者在 Windows 上,要使用的命名管道的名称。在 Windows 上,仅当服务器启动时
named_pipe
启用了支持命名管道连接的系统变量时,此选项才适用。此外,进行连接的用户必须是named_pipe_full_access_group
系统变量指定的 Windows 组的成员。以 开头的选项
--ssl
指定是否使用加密连接到服务器并指示在哪里可以找到 SSL 密钥和证书。请参阅 加密连接的命令选项。加密连接允许的 TLS 协议。该值是一个或多个以逗号分隔的协议名称的列表。可以为此选项命名的协议取决于用于编译 MySQL 的 SSL 库。有关详细信息,请参阅 第 6.3.2 节,“加密连接 TLS 协议和密码”。
这个选项是在 MySQL 5.7.10 中添加的。
--user=
,user_name
-u
user_name
用于连接到服务器的 MySQL 帐户的用户名。
--verbose
,-v
详细模式。打印有关程序功能的更多信息。
--version
,-V
显示版本信息并退出。
--vertical
,-E
垂直打印输出。这类似于
--relative
,但垂直打印输出。--wait[=
,count
]-w[
count
]如果无法建立连接,请等待并重试,而不是中止。如果
count
给定一个值,它表示重试的次数。默认为一次。