共计 1656 个字符,预计需要花费 5 分钟才能阅读完成。
自动写代码机器人,免费开通
丸趣 TV 小编给大家分享一下 mysql 启动创建不了 pid 的原因有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
mysql 启动创建不了 pid 的原因:1、端口被占用;2、生成 pid 文件的目录 mysql 的权限不足;3、该 mysql 对应的 my.cnf 配置文件错误;4、mysql 的启动脚本有问题;5、该 mysql 有残余数据影响了服务的启动。
本教程操作环境:windows7 系统、mysql8.0.22 版,DELL G3 电脑。
mysql 启动创建不了 pid 的原因:
问题一:端口被占用
1 如果你启动的这个 mysql 的端口已被其他服务占用,应修改对应 my.cnf 中的端口号为其他端口, 然后重启 mysql.
[mysqld]
port=3307
2 如果在重启 mysql 前,已有该 mysql 的进程,建议 kill 掉再重启
问题二:生成 pid 文件的目录 mysql 的权限不足
1 找到指定的 mysql 的数据存放目录并授权
chown -R mysql.mysql /data/mysql
2 如果授权后,仍无法启动。可以自己 touch 一个以主机名命名的 pid 文件,再启动
cd /data/mysql
touch node1.pid
问题三:该 mysql 对应的 my.cnf 配置文件错误
1 查看 my.cnf 中的 port,datadir,basedir,socket 等参数的配置是否正确,且配置的目录 mysql 是否有权限
问题四:mysql 的启动脚本有问题
1 当不确定启动脚本或 mysql.server 配置文件内参数是否正常时,先使用 mysqld_safe 方式启动,查看是否可启动
(先 cd 到 mysql 的安装根目录)
./mysqld_safe --defaults-file=/etc/mysql_3306/my.cnf --user=mysql
./mysqld_safe --defaults-file=/etc/mysql/3306/my.cnf --basedir=/Apk/install/mysql --datadir
=/mysql/data/ --pid-file=/mysql/data/mysql.pid --socket=/mysql/data/mysql.sock --port=3306
2 如果可以启动,那么需要查看 mysql 启动脚本或 mysql.server 配置文件内参数并进行修改
重点看下面两个参数
basedir
datadir
问题五:该 mysql 有残余数据影响了服务的启动
1 去 mysql 的数据存放目录进行删除, 然后重启
cd /data/mysql/
rm -r *index
/etc/init.d/mysql start
2 如果还是无法启动,去 mysql 的数据存放目录进行再删除,然后启动
(如果数据库不是新安装的且数据仍在使用,不建议删除 ib 开头的文件。如果删除后,要使用备份对数据库进行恢复)
cd /data/mysql/
rm -r *index
rm -r ib*
3 备注
如果是把 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 的原因有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注丸趣 TV 行业资讯频道!
向 AI 问一下细节