使用vmware安装了一个linux虚拟主机并安装了mysql,现在想在物理主机上使用navicat连接虚拟主机上的mysql。方法如下:
1、在虚拟主机上本地连接mysql
mysql -u root -proot
2、选中mysql数据库
use mysql
3、查看用户表信息
select Host,User from user;
4、通过上面步骤可以得到数据表 user内的值,下面我们对表进行更新记录允许远程访问,
grant all privileges on *.* to 'root'@'%' identified by '密码' with grant option;
此语句意思是给root用户在任何IP都可以登录数据库,操作任何数据库中的任何对象。
其中:
*.* 第一个*是指数据库
*代表所有数据库
第二个*指数据库对象
*代表数据库中所有对象
'root'@'%' root是制定要授权的数据库用户
%代表允许登录的IP
假如要限制只能在1.1.1.1登录,把%改成1.1.1.1
5、刷新数据库权限
flush privileges;
6、重启mysql
service mysql restart
现在可以测试一下是否可以连接了。
如果还是连接不上,查看虚拟机是否开放了mysql的3306端口,开发端口教程见:Linux虚拟机开放端口号3306,实现Mysql远程连接