https://dev.mysql.com/doc/refman/8.0/en/option-files.html https://dev.mysql.com/doc/refman/8.0/en/option-files.html says:
[client] 选项组由 MySQL 发行版中提供的所有客户端程序读取(但不由 mysqld 读取)。
[client] 组使您能够指定适用于所有客户端的选项。例如,[client] 是用于指定连接到服务器的密码的适当组。 (但请确保该选项文件只能由您自己访问,以便其他人无法发现您的密码。)请确保不要将选项放入 [client] 组中,除非您使用的所有客户端程序都能识别该选项。
MySQL客户端程序在手册中:https://dev.mysql.com/doc/refman/8.0/en/programs-client.html https://dev.mysql.com/doc/refman/8.0/en/programs-client.html
如果您使用类似的选项组[client2]
除非您使用--defaults-group-suffix
option.
https://dev.mysql.com/doc/refman/8.0/en/option-file-options.html https://dev.mysql.com/doc/refman/8.0/en/option-file-options.html says:
--defaults-group-suffix=str
不仅要读取常用的选项组,还要读取具有常用名称和后缀 str 的组。例如,mysql客户端通常读取[client]和[mysql]组。如果给出 --defaults-group-suffix=_other 选项,mysql 还会读取 [client_other] 和 [mysql_other] 组。
在你的情况下,你可以运行:
mysql --defaults-group-suffix=2
这将使 mysql 客户端从[client2]
组在您的选项文件中。
“另外,如果我想限制这些用户密码仅限本地主机怎么办?”
当您向用户授予权限时会处理此问题。
GRANT ... ON *.* TO 'user1'@'localhost';
通过在 user1 之后指定主机,这意味着该授权仅在 user1 从本地主机连接时才有效。如果 user1 尝试从任何其他主机进行连接,则授权将不起作用。这包括密码凭证本身。读https://dev.mysql.com/doc/refman/8.0/en/grant.html https://dev.mysql.com/doc/refman/8.0/en/grant.html了解更多信息。