MySQL启动失败,未生成pid文件的解决方法 | 您所在的位置:网站首页 › mysql默认错误日志路径怎么设置不了 › MySQL启动失败,未生成pid文件的解决方法 |
前言
下面介绍的是mysql启动失败,报错为没有pid文件的问题的各种解决方法。 问题原因首先pid文件是mysql启动后,生成的一个文件,里面记录的是mysql当前的进程号,如果创建失败,mysql就无法启动。 可能原因: mysql的端口被占用 生成pid文件的目录mysql的权限不足 mysql对应的my.cnf配置文件错误 mysql的启动脚本有问题 mysql有残余数据影响了服务的启动 注意查看报错日志,如没有特殊配置,通常在数据库的data目录下 问题一:端口被占用 如果你启动的这个mysql的端口已被其他服务占用,应修改对应my.cnf中的端口号为其他端口,然后重启mysql. [mysqld] port=3307如果在重启mysql前,已有该mysql的进程,建议kill掉再重启 问题二:生成pid文件的目录mysql的权限不足 找到指定的mysql的数据存放目录并授权 chown -R mysql.mysql /data/mysql备注: 通常有些情况,某些linux内核的系统,注重"安全",对目录或你登陆的账号的权限有限制,也会导致此问题. 可尝试给你数据库目录的前一个目录设置755权限 chmod -R 755 /data 如始终权限导致异常,请联系该服务器系统的提供者. 如果授权后,仍无法启动。可以自己touch一个以主机名命名的pid文件,再启动 cd /data/mysql touch node1.pid问题三:该mysql对应的my.cnf配置文件错误 查看my.cnf中的port,datadir,basedir,socket等参数的配置是否正确,且配置的目录mysql是否有权限 需要注意的是: 不要把mysql其他版本的调优后的my.cnf文件 放到你的my.cnf配置的目录下 使用调优参数时,有时会因为版本变动的,部分参数不支持,初始化时导致异常. 例如:把mysql5.5调优后的my.cnf 直接使用到 mysql5.6 mysql5.7 mysql8.0 问题四:mysql的启动脚本有问题 当不确定启动脚本或mysql.server配置文件内参数是否正常时,先使用mysqld_safe方式启动,查看是否可启动 (先cd到mysql的安装根目录) ./mysqld_safe --defaults-file=/etc/mysql_3306/my.cnf --user=mysql or ./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如果可以启动,那么需要查看mysql启动脚本或mysql.server配置文件内参数并进行修改 重点看下面两个参数 basedir datadir 问题五:该mysql有残余数据影响了服务的启动 去mysql的数据存放目录进行删除,然后重启 cd /data/mysql/ rm -r *index /etc/init.d/mysql start如果还是无法启动,去mysql的数据存放目录进行再删除,然后启动 (如果数据库不是新安装的且数据仍在使用,不建议删除ib开头的文件。如果删除后,要使用备份对数据库进行恢复) cd /data/mysql/ rm -r *index rm -r 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 |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |