我希望这是正确的地方...我目前正在 Windows 7 主机上通过 VirtualBox 运行 Ubuntu Server 12.04。我正尝试使用以下方式连接到虚拟机的 MySQL 引擎适用于 MySQL 的 MyDB Studio,当我输入我的 MySQL 登录凭据时,它返回以下错误:
Error 1130: Host '192.168.56.1' is not allowed to connect to this MySQL server
我正在运行虚拟机,其中适配器 1 启用了 NAT,适配器 2 启用了仅主机适配器。eth0 10.0.2.15
和eth1 192.168.56.21
。
我可以连接到 Apache 192.168.56.21
,并通过 PhpMyAdmin,一切正常。我确实编辑了文件并通过在行前添加/etc/mysql/my.cnf
注释掉了该行- 我认为这应该允许远程连接。bind-address = 127.0.0.1
#
有什么办法可以解决这个问题吗?可能出了什么问题?
编辑:我正在尝试以“root”身份连接。
编辑:已解决!!
答案1
在您的服务器上从命令行运行 mysql:
mysql -u root -p -h localhost -P 3306
然后在 mysql shell 中运行此命令:
>use mysql
>GRANT ALL ON *.* to root@'%' IDENTIFIED BY 'pass';
>FLUSH PRIVILEGES;
祝你玩得愉快。
答案2
好吧,这是我的愚蠢疏忽,但以下 2 个链接为我指明了正确的方向:
- http://www.ghacks.net/2009/12/27/allow-remote-connections-to-your-mysql-server/
- 端口转发以连接 VirtualBox 的 MySQL 数据库
因此,本着帮助可能遇到同样问题的人的精神......
我创建了一个新用户,授予他所有权限,并将设置host
为%
允许来自任何 IP 的连接。使用新用户登录,然后一切正常!