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>:
https://blog.csdn.net/a791693310/article/details/81083864
<https://blog.csdn.net/a791693310/article/details/81083864>
关于navicat和数据库中文乱码问题,请移步另一篇博文
<https://blog.csdn.net/a791693310/article/details/81266371>
https://blog.csdn.net/a791693310/article/details/81266371
<https://blog.csdn.net/a791693310/article/details/81266371>
热门工具 换一换