如何连接到在虚拟机上运行的MySQL服务器

Mon*_*oon 10 mysql virtual-machine

我在Ubuntu 12.04上运行了MySQL Server 5.5.32.Ubuntu正在VM上运行.主机平台是Windows 7. 如何从Windows连接Ubuntu的MySQL?

到目前为止我做了以下事情:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)

运行show grant for root;显示:

+-------------------------------------------------------------+
| Grants for root@%                                           |
+-------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION |
+-------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试从Windows上运行的SQLYog连接到此服务器时,出现错误Error 2003 Cannot connect to mysql server on '192.168.xxx.xxx'.

IP正在向SQLYog提供,我从中得到了它ifconfig.提供了inet addr.

inet addr:192.168.226.xxx  Bcast:192.168.226.yyy
Run Code Online (Sandbox Code Playgroud)

使用的地址是不正确的还是这些授权问题?请指教.

Ark*_*ski 15

你的问题是(可能)你的mysql被绑定127.0.0.1而不是0.0.0.0.

你应该改变绑定/etc/mysql/my.cnf0.0.0.0

bind-address = 0.0.0.0

然后重启mysql当然.

  • 我自己不得不在Ubuntu上的版本5.6.31的`/ etc/mysql/mysql.conf.d /`中搜索它. (3认同)
  • 绑定到 127.0.0.1 只允许来自本地主机的连接,而 0.0.0.0 允许来自“任何主机”。 (2认同)
  • 这几乎是一个坏建议,因为它现在允许任何 ip 连接到您的 mysql 实例/而不是锁定您知道的 ip。 (2认同)