我使用使用公共IP地址的手动连接设置了一个公共IP连接。但是,当我尝试使用命令mysql --host=<MySQL instance IP> -user=<user> --password
从我的计算引擎实例连接到MySQL实例时,我会得到mysql Access denied for user.. @ (using password: YES)
。用户\密码是正确的,可以从我的本地客户端使用,但不能从我的计算引擎实例使用。
计算引擎实例:Ubuntu 20.04 LTS
mySQL实例版本:mySQL 5.7
我会感谢你的帮助。
这个问题与MySQL配置有关。
要解决您的问题您应该遵循以下步骤:
- 查找客户端主机的外部ip
- 通过SSH连接到您的MySQL虚拟机实例
- 连接到mysql并修改您的现有用户:
或者创建一个新的:RENAME USER 'bob'@'localhost' TO 'bob'@'XXX.226.XXX.220'; FLUSH PRIVILEGES;
CREATE USER 'bob'@'XXX.226.XXX.220' IDENTIFIED BY 'secure_password'; GRANT ALL PRIVILEGES ON *.* TO 'bob'@'XXX.226.XXX.220'; FLUSH PRIVILEGES;
- (可选(检查连接(您的登录名和密码是在未加密的情况下发送的(:
$ mysql -u bob -h YYY.71.YYY.6 -p Enter password: ... mysql>
- 按照分步说明1或2进行操作,并根据文档为远程连接配置SSL/TLS加密