Navicat远程连接云服务器数据库2003错误

Navicat远程连接云服务器数据库2003错误

Navicat是一个非常方便的数据库可视化管理软件。通过Navicat连接数据库后,可以非常方便地管理数据库。

安装好Navicat后,连接本地的数据库一般都不会出现问题。但连接云服务器或者其他远程数据库容易出现各种错误,最常见错误就是2003错误:2003——can't connect to mysql server on localhost(10061)

出现2003错误是因为远程的数据库不允许非localhost(127.0.0.1)的IP连接,以mysql为例,解决办法如下:

1.进入数据库

在远程命令行进入数据库:mysql -u root -p回车,输入password

2. 授权远程用户登录

  • 对所有root用户授权:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;

  • 对指定IP的root用户授权:GRANT ALL PRIVILEGES ON *.* TO root@'指定的IP地址' IDENTIFIED BY '密码' WITH GRANT OPTION;

3.重载授权表

输入命令:FLUSH PRIVILEGES;

退出Mysql:exit;

4.修改Mysql配置文件

打开Mysql配置文件:sudo gedit /etc/mysql/mysql.conf.d/mysqld.cnf

找到bind-address= 127.0.0.1这一句,然后在前面加上#,将其注释。

完成以上操作后,应该就可以成功地通过Navicat远程连接Mysql数据库了。

如果还是发生错误,那么就在上述第2步之前增加一条命令:update user set host = '%' where user = 'root' and host = localhost(如果上述4步之后没有问题,就不用尝试这一步)

结语

实际上这里结合了两种常用的方法:改表法和授权法

关于MySQL权限和用户的更详细的问题,请移步另一篇博文https://blog.csdn.net/a791693310/article/details/81083864

猜你喜欢

转载自blog.csdn.net/a791693310/article/details/80817027
今日推荐