我似乎无法弄清楚这一点。
我想使用命令行连接到驻留在另一台服务器上的 MySQL 数据库。我继续为用户创建了用户名和密码。我还授予了该用户对该数据库的所有权限。
使用命令时:mysql -h <hostname> -u <username> -p,我收到以下错误:
ERROR 1045 (28000): Access denied for user '<username>'@'<local_machine_hostname>' (using password: YES)
Run Code Online (Sandbox Code Playgroud)
问题是它不断将当前机器的主机名附加到用户名中。显然,这user@<local_machine_hostname>是不正确的。
我输入什么并不重要。例如,如果我输入:
mysql -h <hostname> -u '<username>'@'<hostname>' -p
Run Code Online (Sandbox Code Playgroud)
它做同样的事情,只是在错误输出中,它说:
Access denied for user '<username>@<hostname>'@'<local_machine_hostname>'
Run Code Online (Sandbox Code Playgroud)
配置文件中是否有允许发生这种情况的设置?这真的很烦人。我需要设置一个 tikiwiki 服务器,但它无法连接,因为在设置 mysql 的步骤中,它不断将本地计算机的主机名附加到 mysql 登录名。