这几天换新空间配置linux服务器,需要Navicat 可视化工具来操作远程数据库出现了1045错误!
查看3306 端口是否对外开放,MySQL 默认情况下是不开放对外访问功能
netstat -anp | grep 3306
linux进入 MySQL 命令界面:
运行下列SQL 语句,查看用户是否具有访问权限:
use mysql;
select user, host from user;
使用通配符 % 来修改 root 用户对应的 host 字段,使具有访问所有 ip 地址的权限:
update user set host = '%' where user = 'root';
如果抛出如下异常:
Duplicate entry '%-root' for key 'PRIMARY'
说明有多个ROOT用户纪录在USER表中了,我们重新执行:
select host from user where user = 'root';
便能看到字段 host 的 % 值
我们执行 flush privileges; 刷新一下 MySQL 的系统权限相关表
flush privileges;
最后重启一下 MySQL 服务