前两天在腾讯云CentOS服务器上安装了一个单机版MySQL,然后用Navicat去连接,发现报了如下的错误:
一、MySQL root 远程登录授权
刚开始以为是root的远程登录没有开,所以
1、登录mysql服务器,输入你的root密码
mysql -u root -p
2、开启对root的远程授权
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的root密码' WITH GRANT OPTION;
其中root是用户名,% 的意思,就是对于所有IP的访问,都允许。
3、刷新权限
flush privileges;
再访问,还是报
二、配置腾讯云安全组
照理说,做到这一步,用Navicat连接应该是可以的,但是,还是报:
三、打开CentOS防火墙3306端口
排查了一圈,发现是腾讯云默认的防火墙规则--MySQL(3306)没有真的给我打开这个端口:
1、查看是否开启了3306端口
firewall-cmd --zone=public --list-ports
发现确实没有打开3306端口
2、添加3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
3、防火墙重新加载配置
firewall-cmd --reload
四、再访问
可以了