MySQL错误,缺失的袜子,仍然可以与一切连接,除了命令行
问题描述:
我越来越想通过命令行来连接到MySQL时出现以下错误(Ubuntu的14.04)MySQL错误,缺失的袜子,仍然可以与一切连接,除了命令行
ERROR 2002(HY000):无法通过套接字“/var/run/mysqld/mysqld.sock”连接到本地MySQL服务器(2)
看来,该文件/var/run/mysqld/mysqld.sock
丢失。 MySQL仍在运行
% sudo service mysql status
mysql start/running, process 42703
我可以通过Python和MySQL Workbench和MySQL Pro与MySQLdb和sqlalchemy连接。我运行一个Python脚本,并得到了以下错误
(1053,“正在关闭服务器”)
我重新启动脚本,一切都跑起来像往常一样,但因为这一点,我一直无法通过命令行连接。不知道发生了什么,或者为什么袜子会消失。我也跑
sudo find/-type s
并没有发现任何与MySQL相关的信息。
UPDATE:似乎有人注释掉绑定地址127.0.0.1 =(内/etc/mysql/my.cnf),重新启动服务器,意识到这是一个错误,把它放回去,并重新启动。这会删除袜子文件吗?
答
问题似乎是多个mysql进程正在运行。尝试停止MySQL和mysqld的进程,然后重新启动mysql的:
sudo pkill mysql
sudo pkill mysqld
sudo service mysql restart
现在你应该可以登录到MySQL通常
mysql -u root -p
,如果它仍然无法正常工作,而你的mysql数据库是本地,尝试更改绑定地址从127.0.0.1到本地主机,然后尝试杀死上面显示的进程。
打开配置文件:
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
认准行方含绑定地址,改变线
bind-address = localhost
保存文件并退出
现在杀进程并重新启动mysql(本评论开头的前3个步骤)。
它们可能通过TCP连接,而不是套接字。 –
尝试通过tcp连接。 'mysql -u $ user -p --host 127.0.0.1 --port 3306' –
我可以用这种方式连接。 – Sal