MySQL 错误 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-服务器已安装,但/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
问题是您已经有一个 mysql 服务器 运行 而不是 bitnami 服务器。在从 bitnami 启动 mysql 服务器之前,您应该先停止该服务。
您可以尝试停止:
$ sudo service mysql stop
如果它不起作用,您可以终止进程:
$ sudo kill 14743
最后用这个命令启动 bitnami mysql 服务器:
$ sudo /opt/bitnami/ctlscript.sh start mysql
此服务器 运行 之后您应该可以毫无问题地连接。
在做任何事情之前先检查 space。确保它没有被使用 100%
df -h
如果 space 可用。
检查 Mysql 是否 运行。
ps xufa | grep mysql
重启mysql
sudo service bitnami restart mysql
当我的 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-服务器已安装,但/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
问题是您已经有一个 mysql 服务器 运行 而不是 bitnami 服务器。在从 bitnami 启动 mysql 服务器之前,您应该先停止该服务。
您可以尝试停止:
$ sudo service mysql stop
如果它不起作用,您可以终止进程:
$ sudo kill 14743
最后用这个命令启动 bitnami mysql 服务器:
$ sudo /opt/bitnami/ctlscript.sh start mysql
此服务器 运行 之后您应该可以毫无问题地连接。
在做任何事情之前先检查 space。确保它没有被使用 100%
df -h
如果 space 可用。
检查 Mysql 是否 运行。
ps xufa | grep mysql
重启mysql
sudo service bitnami restart mysql