- 网络故障,特别是如果mysql数据库服务器在远程主机上运行。
- 上述主机上没有运行mysql服务器。
- 防火墙阻止TCP-IP连接或其他相关原因。
ping
命令,例如:
$ ping server_ip_address
Ping主机
ps
命令低于该显示有关选择的活动进程的信息,以共同
pipe
和
grep命令 ,来检查MySQL服务器可以在系统上运行。
$ ps -Af | grep mysqld其中选项:
-A
-激活所有进程的选择-f
-支持全格式上市
检查MySQL进程
$ sudo systemctl start mysql.service $ sudo systemctl start mariadb.service OR # sudo /etc/init.d/mysqld start启动mysql服务后,尝试访问数据库服务器:
$ mysql -u username -p -h host_address2.如果你仍然得到同样的错误,然后确定端口(默认为 3306),其上的MySQL服务器可以通过运行监听 netstat命令 。
$ netstat -lnp | grep mysql其中选项:
-l
-显示监听端口-n
-使数字地址显示-p
-表示PID和节目的名称拥有该socket
查找MySQL端口号
-P
选项指定从输出见上访问数据库服务器的端口:
$ mysql -u username -p -h host_address -P port3.如果以上所有的命令成功运行,但你仍然看到错误,打开mysql的配置文件。
$ vi /etc/mysql/my.cnf OR $ vi /etc/mysql/mysql.conf.d/mysqld.cnf寻找线下,并使用其注释掉
#
字符:
bind-address = 127.0.0.1保存文件并退出,之后重启mysql服务如下:
$ sudo systemctl start mysql.service $ sudo systemctl start mariadb.service OR # sudo /etc/init.d/mysqld start但是,如果你有 firewallD或 iptables的运行试试审查防火墙服务,并打开MySQL端口,假设它是防火墙阻止你的MySQL服务器的TCP-IP连接。 就这样!你知道其他方法或有解决MySQL连接错误的建议吗?请通过下面的反馈表单通过发表评论让我们知道。