繁体   English   中英

MySQL ERROR 2002 (HY000): 无法通过套接字连接到本地 MySQL 服务器

[英]MySQL ERROR 2002 (HY000): Can't connect to local MySQL server through socket

当我的 Wordpress 服务器开始抛出 MySQL 错误时,我注意到了这个问题。 为了尝试调试 Wordpress,我尝试手动连接。

我得到以下信息:

$ mysql -u root -p -h localhost -P 3306                                                                                                                                         
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/opt/bitnami/mysql/tmp/mysql.sock' (2)

我也试过没有 -h 选项和 127.0.0.1

看起来 MySQL 正在运行。

$ ps -ef | grep mysql                                                                                                                                                           
mysql    14743     1  0 15:20 ?        00:00:00 /usr/sbin/mysqld
bitnami  14939 13882  0 15:28 pts/0    00:00:00 grep --color=auto

已安装 mysql-server,但/opt/bitnami/mysql/tmp/mysql.sock不存在。

看起来 MySQL 正在监听正确的端口。

$ telnet 127.0.0.1 3306
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
[
5.5.54-0ubuntu0.14.04.1,IIq{;Rh�k>5/)"m"[&J#mysql_native_password

!#08S01Got packets out of orderConnection closed by foreign host.

按照这里的建议:

$ sudo /opt/bitnami/ctlscript.sh status
php-fpm already running
apache already running
mysql not running
$ sudo /opt/bitnami/ctlscript.sh start mysql
2017-02-14T16:53:25.064586Z mysqld_safe Logging to '/opt/bitnami/mysql/data/mysqld.log'.
2017-02-14T16:53:25.233250Z mysqld_safe Starting mysqld.bin daemon with databases from /opt/bitnami/mysql/data
2017-02-14T16:53:28.400598Z mysqld_safe mysqld from pid file /opt/bitnami/mysql/data/mysqld.pid ended
/opt/bitnami/mysql/scripts/ctl.sh : mysql  could not be started
Monitored mysql

以下是 /opt/bitnami/mysql/data/mysqld.log 中的一些选择行。 看起来有冲突。

2017-02-14T17:03:31.274720Z 0 [Note] Server hostname (bind-address): '127.0.0.1'; port: 3306
2017-02-14T17:03:31.274778Z 0 [Note]   - '127.0.0.1' resolves to '127.0.0.1';
2017-02-14T17:03:31.274835Z 0 [Note] Server socket created on IP: '127.0.0.1'.
2017-02-14T17:03:31.274888Z 0 [ERROR] Can't start server: Bind on TCP/IP port: Address already in use
2017-02-14T17:03:31.274901Z 0 [ERROR] Do you already have another mysqld server running on port: 3306 ?
2017-02-14T17:03:31.274952Z 0 [ERROR] Aborting

问题是你已经有一个运行的 mysql 服务器不是 bitnami 的。 在从 bitnami 启动 mysql 服务器之前,您应该先停止该服务。

您可以尝试停止:

$ sudo service mysql stop

如果它不起作用,你可以终止进程:

$ sudo kill 14743

最后使用以下命令启动 bitnami mysql 服务器:

$ sudo /opt/bitnami/ctlscript.sh start mysql

该服务器运行后,您应该能够毫无问题地进行连接。

在做任何事情之前先检查空间。 确保它没有被使用 100%

df -h

在此处输入图像描述

如果有空间。

用于检查 Mysql 是否正在运行。

ps xufa | grep mysql

重启mysql

sudo service bitnami restart mysql

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM