Navicat远程连接服务器mysql

前言

本地Navicat连接远程服务器的数据库出现1045-Access denied for user ‘root’@‘localhost’(using password:YES) 问题。记录一下解决方法,以后方便配置。

解决思路

1.查看mysql的权限

use mysql;
select host, user from mysql.user;
update user set host = '%' where user ='root';
//修改权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '******' WITH GRANT OPTION;//****是你数据库的密码
//立即刷新权限 
flush privileges; 

2.开启防火墙,开启指定端口

//开启防火墙
systemctl start firewalld
//开放指定端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
//重启防火墙
firewall-cmd --reload
//查看端口号
netstat -ntlp   //查看当前所有tcp端口·
netstat -ntulp |grep 3306   //查看所有3306端口使用情况·
mysqladmin flush-host -h IP -u 用户名 -p密码  //清理mysql下的hosts

3.登录服务器后台添加对应端口的安全组(因为docker启动mysql镜像 33306对应的3306)

以上是自己的总结,有不到之处请大家批评指正!!!!

古今成大事者,不唯有超世之才,必有坚韧不拔之志!
原文地址:https://www.cnblogs.com/songwp/p/14922264.html