无法重新启动Mysqld

我在重新启动mysql服务时遇到了问题

[root ~]# service mysqld restart Stopping MySQL: [FAILED] Timeout error occurred trying to start MySQL Daemon. Starting MySQL: [FAILED] 

mysqld.log

 131004 10:34:49 mysqld started 131004 10:34:52 InnoDB: Started; log sequence number 0 43655 131004 10:34:52 [ERROR] Can't start server: Bind on TCP/IP port: Address already in use 131004 10:34:52 [ERROR] Do you already have another mysqld server running on port: 3306 ? 131004 10:34:52 [ERROR] Aborting 131004 10:34:52 InnoDB: Starting shutdown... 131004 10:34:54 InnoDB: Shutdown completed; log sequence number 0 43655 131004 10:34:54 [Note] /usr/libexec/mysqld: Shutdown complete 131004 10:34:54 mysqld ended 

stream程

 # ps -Af | grep mysql root 24965 1 0 08:39 ? 00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.sock --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --user=mysql mysql 25018 24965 43 08:39 ? 00:57:11 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-external-locking --open-files-limit=65535 --socket=/var/lib/mysql/mysql.sock root 27960 27143 0 10:50 pts/0 00:00:00 grep mysql 

它似乎有2个mysqlds运行,其中一个僵尸。 我怎样才能解决这个问题?

尝试

 ps -Af 

find另一个mysqld运行,然后杀死它。

尝试sudo netstat -lntup并查找端口3306,如果MySQL仍然在监听,意味着它没有被杀死,请按照其他注释中的build议使用kill命令,并检查init脚本,看看为什么不停止MySQL。

一般来说,当你不能停止MySQL,这是由于不能通过mysqladminclosures它..运行以下,看看是否closures

  mysqladmin shutdown 

如果这不起作用,则需要在init脚本或/root/.my.cnf文件或另一个my.cnf文件中为其设置密码。

重新启动你的虚拟机或服务器,僵尸MySQL不应该再启动。