下面一起来了解下启动mysql失败报没有pid错误解决方法,相信大家看完肯定会受益匪浅,文字在精不在多,希望启动mysql失败报没有pid错误解决方法这篇短内容是你想要的。
现象:mysql服务开始时提示如下错误:
[root@mysqldb 数据]#,service mysql 开始 Starting MySQL . ., server quit  without updating PID file ([失败)/数据/3306/mysql.pid)。
原因分析:mysql.pid文件是在重动MySQL的时候会创建的,如果创建失败就会提示这个错误,发现导致此错误有很多种原因,
,,,,,,,,,,,,,,,像权限,端口被占用,参数文件配置错误等等,现具体的如下:
解决方式:
,在mysql的datadir数据目录下没有pid文件或者未被授权
(1)一定要给譬如/数据/mysql授权
,,
(2)如果授权了不好,使你可以自己在/数据/mysql下建立一个以主机名命名的pid,如我的主机名是centos - 6.3
,,,,,,,,,你可以
,,,,,,,,,,在里面随意写一个进程中没有的pid号
,(3)如果还是不行,你就需要看看配置文件里/etc/my . cnf中所做面的配置了,将港口,datadir, basedir,套接字前的#去掉
,(4)另外的处理方法还有可能是下面的原因导致
,,,,,,1在可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。
,,,,,,解决方法:去mysql的数据目录/数据看看,如果存在mysql-bin.index,就赶快把它删除掉吧,它就是罪魁祸首了。
,,,,2在mysql在启动时没有指定配置文件时会使用配/etc/my . cnf中所做置文件,请打开这个文件查看在(mysqld)节下有没有指定数据目录(datadir)。
,,,,解决方法:请在(mysqld)下设置这一行:datadir=/usr/local/mysql/data
,,,,,3在skip-federated字段问题
,,,,,,解决方法:检查一下文/etc/my . cnf中所做件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉吧。
,,,,4在selinux惹的祸,如果是centos系统,默认会开启selinux
,,,,解决方法:关闭它,打开/etc/selinux/config,把selinux=执行改为selinux=禁用后存盘退出重启机器试试。
(5),由于是以系统命令方式启动的,检查mysql。服务器配置文件内的配置项是否正确,若无法判断参数是否正确,可以以Mysqld_safe来启动
,,,,,参考命令如下:
(root@mysqldb 3306) #,你 total 8 drwxr-xr-x 5, mysql mysql 4096年,Mar 15 19:16 数据 -rw-r——r, 1, mysql mysql 3676年,Mar 15,
18:44 my . cnf中所做[root@mysqldb 3306] # vi mysql。开始——创建
/mysql/app/mysql/bin/mysqld_safe ——defaults-file=/mysql/数据/3306/my.cnf ——用户=mysqld
[root@mysqldb 3306] # chmod - r 777 mysql。开始——授权
(root@mysqldb 3306) #,你 total 12 drwxr-xr-x 5, mysql mysql 4096年,Mar 15 19:16 数据 -rw-r——r, 1, mysql mysql 3676年,Mar 15,。18:44 my . cnf中所做 -rwxrwxrwx 1, root , root ,,, 89, Mar 15, 22:36 mysql.start root@mysqldb 3306 #,。/mysql.start (root@mysqldb 3306) #, 2018 - 03 - 15 - t14:36:52.021705z mysqld_safe Logging 用& # 39;/mysql/日志/3306/mysqldb-error.err& # 39;。 2018 - 03 - 15 t14:36:52.043126z mysqld_safe  Starting mysqld daemon with databases 得到/mysql/数据/3306/
(root@mysqldb 3306) #, ps ef | grep mysqlroot ,,,,, ,3627,,,1,,0,22:36 pts/0,,,, 00:00:00 /bin/sh /mysql/app/mysql/bin/mysqld_safe ——defaults-file=/mysql/数据/3306/my.cnf ——用户=mysqldmysql ,,, ,4764,,3627年,48,22:36 pts/0,,,, 00:00:11 /mysql/app/mysql/bin/mysqld ——defaults-file=/mysql/数据/3306/my.cnf ——basedir=/mysql/app/mysql ——datadir ,=/mysql/数据/3306/data ——plugin-dir=/mysql/app/mysql/lib/plugin ——用户=mysqld ——日志错误=/mysql/日志/3306/mysqldb-error.err ——open-files-limit=65536 ——pid文件才能=/mysql/数据/3306/mysql.pid ——套接字=/mysql/数据/3306/mysql.sock ——端口=3306 root ,,,,,,, 4796,, 2174,, 0, 22:37 pts/0,,,, 00:00:00 grep mysql
(6), mysql关闭时命令是否正确,第6点与本文说明不一致,但是这个非正确关闭也会导致这种现象