这个程序使您能够通过以下方式提高MySQL安装的安全性:
可以为。设置密码
根
账户。您可以删除
根
本地主机外部可访问的帐户。可以移除匿名用户帐户。
你可以移除
测验
数据库(默认情况下可以被所有用户访问,甚至是匿名用户),以及允许任何人访问以名称开头的数据库的特权test_
.
mysql_secure_installation帮助您实现与在第2.10.4节,“保护初始MySQL帐户”.
正常的用法是连接到本地MySQL服务器;调用mysql_secure_installation无参数:
mysql_secure_installation
当执行时,mysql_secure_installation提示您确定执行哪些操作。
的validate_password
插件可用于密码强度检查。如果没有安装插件,mysql_secure_installation提示用户是否安装。如果启用了插件,稍后输入的任何密码都会被检查。
大多数常见的MySQL客户端选项,例如——主机
而且——港口
可以在命令行和选项文件中使用。例如,使用3307端口通过IPv6连接本地服务器,使用以下命令:
mysql_secure_installation——主机=::1——端口= 3307
mysql_secure_installation支持以下选项,可以在命令行或在(mysql_secure_installation)
而且(客户端)
选项文件的组。有关MySQL程序使用的选项文件的信息,请参见第4.2.2.2节,“使用选项文件”.
表4.9 mysql_secure_installation选项
选项名称 | 描述 | 介绍了 |
---|---|---|
——defaults-extra-file | 除了通常的选项文件外,读取命名的选项文件 | |
——defaults-file | 只读命名选项文件 | |
——defaults-group-suffix | 选项组后缀值 | |
——帮助 | 显示帮助信息并退出 | |
——主机 | MySQL服务器所在的主机 | |
——已 | 读取无选项文件 | |
——密码 | 接受但总是被忽视。无论何时调用mysql_secure_installation,都会提示用户输入密码 | |
——港口 | 连接的TCP/IP端口号 | |
——print-defaults | 打印默认选项 | |
——协议 | 要使用的传输协议 | |
——套接字 | Unix套接字文件或Windows命名管道使用 | |
——ssl | 使连接加密 | |
——ssl-ca | 包含受信任的SSL证书颁发机构列表的文件 | |
——ssl-capath | 包含受信任的SSL证书颁发机构证书文件的目录 | |
——ssl-cert | 包含X.509证书的文件 | |
——ssl cipher | 连接加密允许的密码 | |
——ssl-crl | 包含证书撤销列表的文件 | |
——ssl-crlpath | 包含证书撤销列表文件的目录 | |
——ssl密钥 | 包含X.509密钥的文件 | |
——ssl-verify-server-cert | 根据服务器证书Common name标识验证主机名 | |
——tls版本 | 允许加密连接使用TLS协议 | 5.7.10 |
——使用默认 | 执行时没有用户交互 | |
——用户 | 连接到服务器时使用的MySQL用户名 |
——帮助
,-?
显示帮助信息并退出。
——defaults-extra-file =
file_name
在全局选项文件之后读取该选项文件,(在Unix上)在用户选项文件之前读取该选项文件。如果文件不存在或无法访问,则会发生错误。如果
file_name
不是绝对路径名,它是相对于当前目录进行解释的。有关此选项和其他选项文件选项的其他信息,请参见4.2.2.3节,“影响选项文件处理的命令行选项”.
只使用给定的选项文件。如果文件不存在或无法访问,则会发生错误。如果
file_name
不是绝对路径名,它是相对于当前目录进行解释的。有关此选项和其他选项文件选项的其他信息,请参见4.2.2.3节,“影响选项文件处理的命令行选项”.
不仅读取常用选项组,还读取具有常用名称和后缀的组
str
.例如,mysql_secure_installation正常读取(客户端)
而且(mysql_secure_installation)
组。如果这个选项是——defaults-group-suffix = _other
,mysql_secure_installation还读(client_other)
而且(mysql_secure_installation_other)
组。有关此选项和其他选项文件选项的其他信息,请参见4.2.2.3节,“影响选项文件处理的命令行选项”.
——主机=
,host_name
- h
host_name
连接到给定主机上的MySQL服务器。
不要读取任何选项文件。如果由于从选项文件读取未知选项而导致程序启动失败,
——已
可以用来防止它们被读取。唯一的例外是
.mylogin.cnf
如果文件存在,则在所有情况下读取它。这允许以比在命令行上更安全的方式指定密码,即使在——已
使用。创建.mylogin.cnf
,可以使用mysql_config_editor实用程序。看到第4.6.6节," mysql_config_editor - MySQL配置工具".有关此选项和其他选项文件选项的其他信息,请参见4.2.2.3节,“影响选项文件处理的命令行选项”.
——密码=
,密码
- p
密码
这个选项被接受但被忽略。无论是否使用此选项,mysql_secure_installation总是提示用户输入密码。
——港口=
,port_num
- p
port_num
对于TCP/IP连接,使用的端口号。
打印程序名称和它从选项文件中获得的所有选项。
有关此选项和其他选项文件选项的其他信息,请参见4.2.2.3节,“影响选项文件处理的命令行选项”.
用于连接到服务器的传输协议。当其他连接参数通常导致使用与您想要的协议不同的协议时,它很有用。允许值请参见第4.2.5节,“连接传输协议”.
——套接字=
,路径
- s
路径
为连接
本地主机
,要使用的Unix套接字文件,或者,在Windows上,要使用的命名管道的名称。在Windows上,此选项仅在服务器以
named_pipe
启用支持命名管道连接的系统变量。此外,进行连接的用户必须是指定的Windows组的成员named_pipe_full_access_group
系统变量。选项开始于
——ssl
指定是否使用加密连接到服务器,并指明在何处查找SSL密钥和证书。看到加密连接的命令选项.加密连接允许的TLS协议。一个或多个以逗号分隔的协议名称的列表。可以为该选项命名的协议依赖于用于编译MySQL的SSL库。有关详细信息,请参见第6.3.2节,“加密连接TLS协议和密码”.
这个选项是在MySQL 5.7.10中添加的。
执行非交互的。此选项可用于无人值守的安装操作。
——用户=
,user_name
- u
user_name
连接服务器时使用的MySQL帐号的用户名。