error: 服务无法启动报错



1.1 mysql服务无法启动报错

报错信息:
Starting MySQL. ERROR! Manager of pid-file quit without updating file.
分析过程:
系统版本-centos 6.7;
mysqld服务状态是停止;
查看之前的操作修改过datadir的属主和属组为mysql用户,然后重启就报错了;
分析出datadir和basedir位置;

1.2 尝试解决办法:

  1. 在/etc/init.d/mysqld中指定datadir和basedir;报错依旧
  2. 最后老大解决了,问题是,迁移datadir的时候,把datadir里的一些文件拷贝到一个错误路径去了。

2.1 需要补充的知识点,datadir中会有什么文件,都起什么作用

datadir中的内容:

ll .
????? 2260
drwx------ 2 mysql mysql   4096 10?? 27 17:31 mysql
-rw-r----- 1 mysql mysql  18855 10?? 27 17:31 mysql-bin.000001
-rw-r----- 1 mysql mysql 677162 10?? 27 17:31 mysql-bin.000002
-rw-r----- 1 mysql mysql    933 10?? 27 17:31 mysql-bin.000003
-rw-r----- 1 mysql mysql 677162 10?? 27 17:31 mysql-bin.000004
-rw-r----- 1 mysql mysql     76 10?? 27 17:31 mysql-bin.index
-rw-rw---- 1 mysql mysql  10116 10?? 27 17:39 srv.example.com.err
-rw-rw---- 1 mysql mysql      6 10?? 27 17:39 srv.example.com.pid
drwx------ 2 mysql mysql   4096 10?? 27 17:31 test
drwxrwxrwx 2 mysql mysql  12288 10?? 27 15:59 example_1
drwxrwxrwx 2 mysql mysql  12288 10?? 27 15:59 example_2
......

# 各文件的说明:
file mysql-bin.000001
mysql-bin.000001: MySQL replication log
# 这些文件都是mysql的操作文件

file mysql-bin.index
mysql-bin.index: ASCII text
# 顾名思义,应该是mysql-bin文件的索引
 
# 每一个目录对应一个数据库
ll www_zhenzhu365_com/
????? 248
-rwxrwxrwx 1 mysql mysql    61 10?? 27 16:01 db.opt
-rwxrwxrwx 1 mysql mysql  8882 10?? 27 16:01 emlog_attachment.frm
-rwxrwxrwx 1 mysql mysql  8722 10?? 27 16:01 emlog_twitter.frm
-rwxrwxrwx 1 mysql mysql     0 10?? 27 16:01 emlog_twitter.MYD
-rwxrwxrwx 1 mysql mysql  1024 10?? 27 16:01 emlog_twitter.MYI
-rwxrwxrwx 1 mysql mysql  8852 10?? 27 16:01 emlog_user.frm
-rwxrwxrwx 1 mysql mysql    60 10?? 27 16:01 emlog_user.MYD
-rwxrwxrwx 1 mysql mysql  3072 10?? 27 16:01 emlog_user.MYI

文件说明:

PS: 其中比较特殊的两个数据库是mysql和test,mysql中保存的是mysql软件的一些用户权限和之类的软件相关的设置项。