一、阿里云服务器的安全组入方向开放3306端口
1、选择配置安全组
2、进入后选择配置规则,再点击添加安全组规则
3、如下图添加规则
二、在服务器端开放mysql的访问权限
命令执行之后一定要flush一下。
use mysql;
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; Query OK, 0 rows affected (0.00 sec) mysql>FLUSH PRIVILEGES; Query OK, 0 rows affected (0.00 sec)
三、navicat端连接
1、常规连接这里连接名填服务器的公网ip,用户名和密码为自己数据库的用户名密码
2、ssh通道
主机填公网ip,用户名密码为自己服务器的用户名密码,这里ssh失败的话可以试着按步骤一开放22端口
四、连接不上数据库的常见错误——1698错误
这里要给root用户开放外部访问权限。
登录mysql
sudo mysql -u root -p
查看root的plugin
select user, plugin from mysql.user;
修改plugin
update mysql.user set authentication_string=PASSWORD('your passwd'), plugin='mysql_native_password' where user='root';//your password处替换为自己的密码
刷新
flush privileges;
退出
exit;