本地Windows远程连接服务器的MySQL数据库
前言:
使用Windows窗口连接服务器上面的mysql,需要有以下的环境:
- Windows安装mysql,并且能够正常使用本机数据库
- Linux下安装好mysql,并且能够在xshell连接使用数据库
这篇博客就是怎么使用本地Windows远程连接服务器的MySQL数据库
步骤:
看下error吧,这是Windows没有连接上服务器上面数据库报的错误:
无法连接到上的MySQL服务器、
=======服务器端进行修改===========
必做~
需要在阿里云ECS控制台中放行3306mysql的端口,如果有宝塔的小伙伴也记得在宝塔中开启相关的端口信息~
1、关闭防火墙
# service iptables stop
在关闭防火墙到时候,出现:
Redirecting to /bin/systemctl stop iptables.service Failed to stop iptables.service: Unit iptables.service not loaded.
解决方法:
yum install iptables-services
实际上,centos7后是使用的基于iptable的systemctl stop firewalld,使用下面命令即可:
systemctl stop firewalld
2、连接数据库
# mysql -u root -p
3、进入数据库,查看当前数据允许登录的用户和主机
mysql > use mysql
mysql > select host,user from user;
mysql> select host,user from user; +-----------------+--------+ | host | user | +-----------------+--------+ | 127.0.0.1 | root | | 127.0.0.1 | t_user | | 127.0.0.1 | test | | ::1 | root | | izif45fzaj7j6lz | | | izif45fzaj7j6lz | root | | localhost | | | localhost | root | | localhost | t_user | | localhost | test | +-----------------+--------+
4、修改host的值
将其中一个记录的host值改为"%",表示可以允许任何地方登录
mysql > update user set host = "%" where user = "root"
mysql> select host,user from user; +-----------------+--------+ | host | user | +-----------------+--------+ | % | root | | 127.0.0.1 | root | | 127.0.0.1 | t_user | | 127.0.0.1 | test | | ::1 | root | | izif45fzaj7j6lz | | | izif45fzaj7j6lz | root | | localhost | | | localhost | t_user | | localhost | test | +-----------------+--------+
5、刷新权限表/重启mysql
刷新权限表:flush privileges;
6、重启mysql服务
service mysqld restart
7、Windows连接服务器mysql