除了使用连接字符串指定连接参数外,还可以在启动 MySQL Shell 时为每个值使用单独的命令参数来定义连接数据。有关 MySQL Shell 命令选项的完整参考,请参阅第 A.1 节,“mysqlsh — MySQL Shell”。
使用以下连接相关参数:
命令选项的行为类似于使用命令选项连接到 MySQL 服务器中描述的 用于mysql客户端的选项。
使用以下命令选项来控制是否以及如何为连接提供密码:
-
--password=
( ) 和一个值提供用于连接的密码(最多 128 个字符)。对于长格式 ,您必须在选项及其值之间使用等号而不是空格。对于缩写形式,选项与其值之间不能有空格。如果在任何一种情况下都使用空格,则该值不会被解释为密码,而可能被解释为另一个连接参数。password
-p
password
--password=
-p
在命令行上指定密码应该被认为是不安全的。请参阅 密码安全的最终用户指南。您可以使用选项文件来避免在命令行中提供密码。
--password
没有值和等号,或-p
没有值,请求密码提示。--no-password
,或--password=
具有空值,指定用户在没有密码的情况下连接。当连接到服务器时,如果用户有一个不安全且不推荐的无密码帐户,或者如果正在使用套接字对等凭据身份验证(对于 Unix 套接字连接),则必须使用这些方法之一来显式指定不提供密码,不需要密码提示。--password1
、--password2
和--password3
,可从 MySQL Shell 8.0.28 获得,是需要多重身份验证的帐户的密码。您最多可以提供三个密码。这些选项的工作方式与 --password 选项相同,--password1 被视为等同于该选项。这些选项可从 MySQL Shell 8.0.28 获得,它们仅支持使用命令行参数建立的经典 MySQL 协议连接。
当以多种方式指定参数时,例如同时使用--uri
选项和指定单个参数(如 )
--user
,以下规则适用:
从 MySQL Shell 到服务器的连接可以加密,并且可以压缩,如果您请求这些功能并且服务器支持它们。有关建立加密连接的说明,请参阅 第 4.3.3 节,“使用加密连接”。有关建立压缩连接的说明,请参阅 第 4.3.6 节,“使用压缩连接”。
以下示例显示如何使用命令参数指定连接。尝试在端口 33065 与指定用户建立 X 协议连接:
$> mysqlsh --mysqlx -u user -h localhost -P 33065
尝试与指定用户建立经典MySQL协议连接,请求对连接进行压缩:
$> mysqlsh --mysql -u user -h localhost -C