首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >centos:已经使用相同的unix套接字运行的另一个MySQL守护进程

centos:已经使用相同的unix套接字运行的另一个MySQL守护进程
EN

Stack Overflow用户
提问于 2013-12-06 01:59:05
回答 9查看 131.9K关注 0票数 78

启动mysqld服务时出现一个奇怪的错误:

代码语言:javascript
复制
Another MySQL daemon already running with the same unix socket.

我尝试列出正在运行的服务并停止它们,但在启动mysqld服务时出现相同的错误。

我可以尝试删除mysqld并重新安装它,但这样做会删除数据库吗?

EN

回答 9

Stack Overflow用户

发布于 2014-01-10 01:16:10

TL;DR:

以root用户身份运行以下命令,您就可以完成所有设置:

代码语言:javascript
复制
rm $(grep socket /etc/my.cnf | cut -d= -f2)  && service mysqld start

更长的版本:

您可以在/etc/my.conf中手动查找MySQL套接字文件的位置,也可以直接使用

代码语言:javascript
复制
grep socket /etc/my.cnf | cut -d= -f2

它很可能是/var/lib/mysql/mysql.sock。然后(当然是以根用户身份,或者在前面加上sudo )删除该文件:

代码语言:javascript
复制
rm /var/lib/mysql/mysql.sock

然后启动MySQL守护进程:

代码语言:javascript
复制
service mysqld start

删除mysqld根本不能解决问题。问题是CentOS & RedHat不会在崩溃后清理sock文件,所以您必须自己清理。避免关闭你的系统(当然)也是被建议的,但有时你无法避免,所以这个过程会解决这个问题。

票数 19
EN

Stack Overflow用户

发布于 2013-12-06 02:31:07

我已经为这个问题中的任何人找到了解决方案,将套接字目录更改为my.cnf文件中的新位置

代码语言:javascript
复制
socket=/var/lib/mysql/mysql2.sock

service mysqld start

或者像GeckoSEO回答的那样快速

代码语言:javascript
复制
# mv /var/lib/mysql/mysql.sock /var/lib/mysql/mysql.sock.bak

# service mysqld start
票数 4
EN

Stack Overflow用户

发布于 2013-12-07 05:49:00

我对此的解决方案是在/var/lib/mysql/目录中硬关机时留下的mysql.sock。Mysql认为它已经在运行了,但它并没有运行。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20407292

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档