📜  如何修复 opt lampp bin mysql.server: 264: kill: no such process - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:38:09.133000             🧑  作者: Mango

如何修复 opt/lampp/bin/mysql.server: 264: kill: no such process

当我们尝试启动 MySQL 服务时,有时候会遇到这个错误 opt/lampp/bin/mysql.server: 264: kill: no such process,这意味着 MySQL 并没有正确停止,因此也不能正确启动。

本文将介绍如何解决这个问题。以下是几个可能的方案。

1. 查找并杀死所有的 MySQL 进程

在启动 MySQL 前,我们需要杀死当前正在运行的 MySQL 进程。打开终端,输入以下命令:

sudo ps aux | grep mysql

会输出一些 MySQL 进程的信息。杀死这些进程,输入以下命令:

sudo kill -9 进程号

杀死所有的 MySQL 进程后,再尝试启动 MySQL 服务。这时如果还有问题,请看以下步骤。

2. 检查 MySQL 的 PID 文件

查找 MySQL 进程的 PID 文件,输入以下命令:

sudo find / -name "*.pid"

你会看到类似这样的输出:/var/lib/mysql/mysql.pid

检查这个文件里是否有过期的 PID。如果有,更改或删除它。

更改 PID 文件的命令:

sudo vim /var/lib/mysql/mysql.pid

删除 PID 文件的命令:

sudo rm /var/lib/mysql/mysql.pid

进行这些操作后,再尝试启动 MySQL 服务。如果还有问题,请尝试以下步骤。

3. 检查 MySQL 配置文件

查找 MySQL 配置文件,输入以下命令:

sudo find / -name "my.cnf"

打开配置文件,输入以下命令:

sudo vim /etc/mysql/my.cnf

检查以下三种情况是否存在,如果存在请注释掉。

skip-external-locking
skip-networking
bind-address = 127.0.0.1

进行这些操作后,再尝试启动 MySQL 服务。如果还有问题,请看以下步骤。

4. 检查 MySQL 用户的权限

如果你正在使用非 root 用户来启动 MySQL,则需要检查该用户是否有启动 MySQL 的权限。输入以下命令查看 MySQL 的所有用户:

mysql> SELECT User FROM mysql.user;

检查你要使用的用户是否在列表中,如果不在,则需要创建一个新用户。例如,创建一个名为 test 的用户:

mysql> CREATE USER 'test'@'localhost' IDENTIFIED BY 'password';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'test'@'localhost' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;

更换新用户启动 MySQL,输入以下命令:

sudo /etc/init.d/mysql stop
sudo /etc/init.d/mysql start

以上是几个可能解决该问题的方案。如果以上步骤都不能解决该问题,请参阅 MySQL 官方文档或在相关技术社区寻求帮助。