本日志标题:本地Navicat连接宝塔面板安装的MySQL出现2003、1045错误不能连接数据库        [2022-12-9]

在服务器上安装了宝塔面板,通过宝塔面板安装了数据库MySQL,但在本地电脑希望通过Navicat远程连接数据库时出现2003错误,之前有同事也提过类似的问题,说宝塔安装的都是这个问题。



第一个考虑的就是服务器防火墙把MySQL数据库的端口3306没有开放访问。

Xsheel进入服务器后查询端口情况“firewall-cmd --query-port=3306/tcp”果然是no



再返回到宝塔面板,查看安全选项,3306端口就没有添加规则



那么就应该先把这个端口加上,有两种方式,一种是再宝塔面板上直接添加新规则;还有一种就是使用命令行添加。



firewall-cmd --permanent --add-port=3306/tcp



添加了3306端口之后重启下防火墙,这个端口就被开放访问了。命令行添加完成后,在宝塔面板也能动态看到该端口被开放的规则。



firewall-cmd --reload





紧随其后的是使用Navicat连接数据库又显示为1045错误,其实就是数据库root的权限没有开放所有ip访问的原因。



通过xsheel进入服务器的mysql



mysql -u root -p



输入密码后进入,使用mysql表


use mysql;



先查询下当前的mysql用户列表和权限情况


select user,host from user;



看到root用户没有允许所有ip访问的配置(%表示允许所有)



那么就通过下面的命令行进行添加所有IP的访问


update user set host='%' where user='root';



\q 退出mysql后重启下mysql,本地Navicat顺利远程服务器mysql数据库



service mysqld restart






简单总结下:
1、开防火墙端口,可以通过宝塔面板的安全栏目添加规则,也可以通过命令行添加,命令行添加后要重启防火墙


#firewall-cmd --permanent --add-port=3306/tcp

#firewall-cmd --reload



2、允许相关账号的被远程访问,开通允许所有ip访问,先进入mysql,通过sql语句更新权限,最后退出mysql进行重新启动


#mysql -u root -p
#输入密码进入
>use mysql;
>update user set host='%' where user='root';
>\q

# service mysqld restart



在百度搜索完整的本地Navicat连接宝塔面板安装的MySQL出现2003、1045错误不能连接数据库内容,或者用Google搜索相关的更多内容

By [cnbruce] at 15:38:14 | 评论 [0] | 浏览 [1995] | TrackBack| 返回顶部

About Comments
此篇日志暂时没有相关的说明和评论。:)


Post a Comment
呢称: 验证码: 
禁止笑脸转换 禁止UBB | 缩放输入框:6 5 | [Ctrl+Enter提交](1000个字符限制)