首先测试本机和虚拟机能否ping通
- ping的通,下一步
- ping不通,查看虚拟机的ipv4地址是否和本机的在同一网段,修改虚拟机的ipv4地址,使其和本机的在同一网段,即可ping通
测试能否成功连接
不能,则修改数据库连接权限
// %:表示从任何主机连接到mysql服务器
mysql> GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
//刷新权限
mysql> FLUSH PRIVILEGES;
或者 可能你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入MySQL后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost“改称”%”
mysql -u root -p
mysql>use mysql;
mysql>update user set host = '%' where user = 'root' and host='localhost';
mysql>select host, user from user;
mysql>FLUSH RIVILEGES;
再次测试能否成功连接
不能,查看是否为虚拟机和本机的防火墙所阻隔。
关闭本机防护墙,开启虚拟机的3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent