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

5vf7fwbs  于 2023-06-20  发布在  PHP
关注(0)|答案(3)|浏览(110)

当我的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)

我也试过no-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.

Following the suggestion here:

$ 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
wbgh16ku

wbgh16ku1#

问题是你已经有一个运行的mysql服务器,而不是bitnami服务器。在从bitnami启动mysql服务器之前,你应该先停止该服务。
你可以尝试停止:
$ sudo service mysql stop
如果它不起作用,您可以杀死该进程:
$ sudo kill 14743
最后,使用以下命令启动bitnami mysql服务器:
$ sudo /opt/bitnami/ctlscript.sh start mysql
此服务器运行后,您应该能够连接没有问题。

t9aqgxwy

t9aqgxwy2#

在做任何事情之前,先检查一下空间。确保它不是100%使用

df -h

如果空间可用。
检查Mysql是否运行。

ps xufa | grep mysql

重新启动mysql

sudo service bitnami restart mysql
fiei3ece

fiei3ece3#

有时候,你所需要的只是重新开始。试试下面的方法。

sudo opt/bitnami/ctlscript.sh stop

后接

sudo opt/bitnami/ctlscript.sh start

你也可以做一个重新启动,但我有示例,重新启动没有工作,但停止和启动工作。

相关问题