如何从 Vagrant-box 连接到 NAS 上的数据库

How to connect to database on NAS from Vagrant-box

我目前正在开发一个基于 Vagrant 的带有虚拟服务器的网站。在此之前,我总是使用我的 NAS 网络服务器来开发我的网站。 我想继续在 NAS 上使用我的数据库,因为它很容易通过作为应用程序安装在 NAS 上的 phpMyAdmin 来处理。

当 ssh 进入我的 virtualbox 时,我可以从我的 NAS ping 到内部 IP,即 192.168.0.10。与它建立数据库连接,不起作用。

通常我为不属于我内部网络范围的VirtualBox使用静态IP,例如192.168.33.23。我试图将其更改为范围内的 ip,但随后收到一条错误消息:

The specified host network collides with a non-hostonly network!
The specified host network collides with a non-hostonly network!
This will cause your specified IP to be inaccessible. Please change 
the IP or name of your host only network so that it no longer matches that of a bridged or non-hostonly network.

解决此问题的最佳方法是什么?我阅读了 Vagrant Docs 和其他帖子,但我没有读完 运行。

** 更新**

我将这一行添加到我的 Vagrantfile 中:

config.vm.network 'public_network'

这会调用桥接模式。在启动虚拟机时选择 'en0: Wi-Fi (Airport)' 作为适配器后,我的虚拟机的 ip 现在是 192.168.0.100 但我仍然无法连接到我的数据库 @192.168.0.10。 我已经通过将所有文件放在 NAS 网络服务器上进行了凭据检查,并且一切正常。

解决方案:

  • 将网络设置为桥接模式
  • 授予 mysql 用户 table
  • 中的虚拟机 IP 地址访问权限

所以我刚刚在 phpMyAdmin 中添加了相同的用户,但现在使用 VM ip 地址作为主机名。