navicat连接阿里云服务器的mysql(linux系统),解决Access denied for user ‘root‘@的错误

最近用navicat连接服务器上的数据库,老是连接不上
navicat连接阿里云服务器的mysql(linux系统),解决Access denied for user ‘root‘@的错误
出现这个错误时,要注意root@后面的地址,是你当前电脑的ip地址,这句话的意思就是mysql没有允许这个ip进行连接.记住这个ip地址

开放端口

我使用的是宝塔Liunx面板,方便管理
在安全中或者去你服务器的控制台开启MySQL使用的3306端口
navicat连接阿里云服务器的mysql(linux系统),解决Access denied for user ‘root‘@的错误

在服务器上配置mysql,开启远程连接

用Xshell连接上服务器后,使用命令进入mysql数据库

mysql -u root -p

输入自己的密码
然后

GRANT ALL PRIVILEGES ON *.* TO root@'填写上面说的自己当前的ip地址' IDENTIFIED BY '填你数据库的密码' with grant option; 

这句话的意思就是给IP-xxx.xxx.xxx.xxx赋予了所有的权限,包括远程访问权限
,然后刷新

flush privileges

然后重新连接
登陆后你可以打开mysql数据库中的user表,查看host和对应的user
也可以在数据库中使用语句来实现

use mysql;
//选择mysql数据库
select host,user from user;
上一篇:MySQL问题:ERROR 1698 (28000): Access denied for user 'root'@'localhost'


下一篇:奇怪的问题:Linux执行脚本碰到Permission denied问题(记录)