mysql启动创建不了pid是什么原因

文 / @WordPress主题

MySQL启动创建不了pid是什么原因?

MySQL是一种常用的关系数据库管理系统,常常被用在网站后台、企业信息系统等领域。但是,在使用MySQL时可能会遇到启动创建不了pid的问题,具体原因可能有以下几种:

问题一:端口被占用

如果启动的MySQL的端口已被其他服务占用,应修改对应my.cnf中的端口号为其他端口,然后重启MySQL。

在my.cnf中添加以下内容:

```
[mysqld]
port=3307
```

问题二:生成pid文件的目录MySQL的权限不足

找到指定的MySQL的数据存放目录并授权。

```
chown -R mysql.mysql /data/mysql
```

如果授权后仍无法启动,可以自己touch一个以主机名命名的pid文件,再启动。

```
cd /data/mysql
touch node1.pid
```

问题三:该MySQL对应的my.cnf配置文件错误

查看my.cnf中的port、datadir、basedir、socket等参数的配置是否正确,且配置的目录MySQL是否有权限。

问题四:MySQL的启动脚本有问题

当不确定启动脚本或mysql.server配置文件内参数是否正常时,先使用mysqld_safe方式启动,查看是否可启动。

```
cd /usr/local/mysql
./mysqld_safe --defaults-file=/etc/my.cnf --user=mysql --datadir=/mysql/data --pid-file=/mysql/data/mysql.pid --socket=/mysql/data/mysql.sock --port=3306
```

如果可以启动,需要查看MySQL启动脚本或mysql.server配置文件内参数并进行修改,重点看下面两个参数:

```
basedir
datadir
```

问题五:该MySQL有残余数据影响了服务的启动

去MySQL的数据存放目录进行删除,然后重启。

```
cd /data/mysql/
rm -rf * index
/etc/init.d/mysql start
```

如果还是无法启动,去MySQL的数据存放目录进行再删除,然后启动。如果数据库不是新安装的且数据仍在使用,不建议删除ib开头的文件。如果删除后,要使用备份对数据库进行恢复。

```
cd /data/mysql/
rm -rf * index
rm -rf ib*
```

如果你把MySQL的数据存放目录下的文件都删除了,应重新进行初始化。初始化后,进行启动。例如:

```
/Apk/install/mysql/mysql-5.5.32/script/mysql_install_db --user=mysql --basedir=/Apk/install/mysql/mysql-5.5.32 --datadir=/Apk/data/mysql_3306/data --pid-file=/Apk/data/mysql_3306/data/mysql.pid --socket=/tmp/mysql_3306.sock --port=3306
```

以上就是MySQL启动创建不了pid的可能原因及解决方法。如果遇到了问题,可以参考上述方法解决问题。

添加UTHEME为好友
扫码添加UTHEME微信为好友
· 分享WordPress相关技术文章,主题上新与优惠动态早知道。
· 微信端最大WordPress社群,限时免费入群。