windows下使用navicat远程连接虚拟机上的MySQL数据库
自己研究过后,发现连接Linux中的MySQL数据库要注意这样几点
①首先要关闭Linux上的防火墙,或者设置防火墙可以让3360端口可以被远程访问
②Linux中的MySQL是默认不可被远程连接的。所以你就需要给Linux主机用户赋予权限
在这里给大家说明两种方法
①就是修改设置主机为全部可以接入
更改 “mysql” 数据库里的 “user” 表里的 “host” 项,将"localhost"改为"%"
ps:%的意义是表示可以被远程连接
#mysql -u root -proot
mysql>use mysql;
mysql>update user set host = ‘%’ where user = ‘root’;
mysql>select host, user from user;
这一方法可以选在选择关闭防火请墙
或者清除防火墙的规则或者开放端口
①关闭防火墙
service iptables start(centos7.0之前)
②开放端口
vim /etc/sysconfig/iptables #编辑
添加下面命令开启3306端口
#-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
③清除防火墙规则
命令为:iptables -Fps:修改的localhost是自己本地的主机名## 修改主机名
②直接给一个用户赋予权限
从任何主机上使用root用户,密码:youpassword(你的root密码)连接到mysql服务器:
# mysql -u root -proot
mysql>GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘youpassword’ WITH GRANT OPTION;
操作完后切记执行以下命令刷新权限
FLUSH PRIVILEGES(大小写都可以)