我尝试运行service mysql stop
,killall -s SIGKILL mysqld
,/etc/init.d/mysql stop
和stop mysql
,但我仍然看到ps aux | grep mysql
的输出结果:
root 32302 0.0 0.3 59040 2120 pts/8 S 06:03 0:00 sudo mysqld_safe
root 32305 0.0 0.1 4440 772 pts/8 S 06:03 0:00 /bin/sh /usr/bin/mysqld_safe
mysql 32651 0.1 6.8 426740 41388 pts/8 Sl 06:03 0:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --log-error=/var/log/mysql/error.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/run/mysqld/mysqld.sock --port=3306
答案 0 :(得分:30)
唯一对我有用的是部分解释here。
如果其他一切都失败了,试试这个:
root@myhost:/usr/bin# initctl --system stop mysql
之后,您可以使用
开始正常控制mysqlroot@myhost:/usr/bin# /etc/init.d/mysql start
或者
root@myhost:/usr/bin# initctl --system start mysql
答案 1 :(得分:12)
您可以使用pkill mysqld
Linux手册页:pkill
答案 2 :(得分:6)
如果其他所有方法都失败了,请使用
kill -9 "processid"
或
kill -s“processid”
答案 3 :(得分:1)
您可能处于安全模式。 因此,所有进程都将立即重新生成。
但是以下方法应该起作用。
注意用用户名
mysqladmin -u root -p shutdown
要重新启动
sudo service mysql start
答案 4 :(得分:0)
对于那些在尝试杀死mysqld_safe时一直看到此错误的人:
2019-05-06T14:47:13.251226Z mysqld_safe现在正在运行的进程数:0 2019-05-06T14:47:13.253591Z mysqld_safe mysqld重新启动
2019-05-06T14:48:31.097077Z mysqld_safe现在正在运行的进程数:0 2019-05-06T14:48:31.102834Z mysqld_safe mysqld重新启动
使用killall -9 mysqld mysqld_safe
我认为,如果您只是杀死mysqld_safe,则将生成mysqld,并且当它看到没有mysqld_safe时。它将视为错误并再次启动mysqld_safe ...这是我的猜测。