MYSQL启动后报:ERROR! The server quit without updating PID file错误的问题解决

转载 2015年07月06日 19:12:23

问题起因:
今天做了一件事情:我在VM 上将一数据库的数据文件(/var/lib/mysql整个文件夹)拷贝到另外一台VM上,然后新的VM 上启动MYSQL,结果报如下异常:
[root@localhost mysql]# service mysql start
Starting MySQL.. ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid).

于是Google之,大部分的答案都是:
1. 注释/etc/my.cnf里的skip-federated注释掉即#skip-federated;
2. my.cnf文件配置过高,重新定义其中的参数(根据服务器情况定义);
3. 杀掉mysql_safe和mysqld进程,然后再重启;
4. 当前日志文件过大,超出了my.cnf中定义的大小(默认为64M),删除日志文件再重启;

5. 其他情况,查看日志文件(我的是localhost.localdomain.err,具体因人而异),然后具体分析;


问题解决:

其中,我查看了日志内容,如下:

[root@localhost mysql]# less localhost.localdomain.err 
111203 22:09:03 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
^G/usr/sbin/mysqld: File './mysql-bin.index' not found (Errcode: 13)
111203 22:09:03 [ERROR] Aborting

111203 22:09:03 [Note] /usr/sbin/mysqld: Shutdown complete

111203 22:09:03 mysqld_safe mysqld from pid file /var/lib/mysql/localhost.localdomain.pid ended


但是我查看了我的目录文件,mysql-bin.index文件是存在的呀,奇怪:

[root@localhost mysql]# ll
total 49828
-rw-rw----. 1 mysql mysql 35651584 Dec  3 17:55 ibdata1
-rw-rw----. 1 mysql mysql  5242880 Dec  3 17:55 ib_logfile0
-rw-rw----. 1 mysql mysql  5242880 Dec  3 15:45 ib_logfile1
-rw-rw----. 1 mysql root      1376 Dec  3 22:02 localhost.localdomain.err
drwx--x--x. 2 mysql mysql     4096 Dec  3 17:55 mysql
-rw-rw----. 1 mysql mysql  4847020 Dec  3 17:55 mysql-bin.000001
-rw-rw----. 1 mysql mysql     1373 Dec  3 17:56 mysql-bin.000002
-rw-r--r--. 1 root  root        19 Dec  3 15:38 mysql-bin.index
drwx------. 2 mysql mysql     4096 Dec  3 17:55 performance_schema
-rw-r--r--. 1 root  root       116 Nov 25 21:03 RPM_UPGRADE_HISTORY
-rw-r--r--. 1 mysql mysql      116 Nov 25 21:03 RPM_UPGRADE_MARKER-LAST
drwxr-xr-x. 2 mysql mysql     4096 Dec  3 17:55 test

仔细看了下,咦?-rw-r--r--. 1 root  root        19 Dec  3 15:38 mysql-bin.index----难道是权限不够?于是将该文件加了写权限,重启,涛声依旧!!!噢噢!


难道是编码问题?难道是....继续猜测。。。问题还是没解决,后来我做了一件事情,将mysql-bin.index文件删除掉!重启!!OH!No!!

[root@localhost mysql]# rm -rf mysql-bin.index 
[root@localhost mysql]#  
[root@localhost mysql]# service mysql start
Starting MySQL... SUCCESS! 


就这样??为什么呢?至今这个仍然是未解之谜(对我来说),如有知情者请告知:)


补充:

很多时候,我们在做主从同步的时候,将数据库目录整体打包拷贝到从机上的时候,重启也往往会出现类似的问题,解决方法仍然是:

1)给MYSQL数据库数据目录权限:chown -R mysql:mysql 目录名称

2)务必保证MYSQL的进程是已经关闭了的;


另外要注意的地方就是:ib_*, mysql-bin-*, *.err(log文件)以及master-info和relay-info文件都是可以删除的,相当于重新初始化数据库的数据,但是前提是:

1)操作前要先关掉MYSQL的进程;

2)删掉文件后要重新启动MYSQL,如果有异常,请自行查看日志找问题,一般都比较好定位和解决。

linux下mysql的卸载、安装全过程及遇到"MySQL提示:The server quit without updating PID file问题的解决办法"

linux下mysql的卸载、安装全过程 from:http://blog.sina.com.cn/s/blog_48d5933f0100ts7t.html MySQL提示:The server q...
  • STU756
  • STU756
  • 2016年06月24日 14:07
  • 5311

MySQL安装启动时报错一则

问题:--成功安装[root@hadoop0 rpm]# rpm -ivh MySQL-server-5.6.28-1.el6.x86_64.rpmwarning: MySQL-server-5.6....
  • lichangzai
  • lichangzai
  • 2016年05月16日 14:41
  • 6782

MySQL安装过程中出现的问题

1>解压缩MySQL [root@localhost test]# tar -xvf MySQL-5.6.12-2.linux_glibc2.5.i386.rpm-bundle.tar MySQ...
  • u011451057
  • u011451057
  • 2013年08月26日 12:13
  • 4648

mysql 半同步(semi_sync)插件与skip-grant-tables冲突问题一例

今天一个朋友问说忘了mysqlroot密码怎么办,我告诉他重启的时候加--skip-grant-tables,然后update 密码之后flush privilges即可。 不过这哥们按照我说的做却直...
  • lidan3959
  • lidan3959
  • 2014年03月06日 17:09
  • 1843

源码编译安装MySQL5.6.12详细过程

1 下载安装包download tar.gzwget http://download.csdn.net/detail/mchdba/7545037​2 安装cmake软件包yum install cm...
  • mchdba
  • mchdba
  • 2014年06月30日 17:50
  • 8958

mysql 初识之日志文件篇

麻雀虽小,五脏俱全。MySQL虽然以简单著称,但其内部结构并不简单。本章从MySQL物理组成、逻辑组成,以及相关工具几个角度来介绍MySQL的整体架构组成...
  • ls3648098
  • ls3648098
  • 2013年07月18日 15:04
  • 4593

Linux 下 安装mysql (整合多个安装博客及The server quit without updating PID file问题解决博客最后成功了)

1.准备mysql 我用的是5.6.39 mysql-5.6.39-linux-glibc2.12-i686.tar.gz  可以用wget 直接复制(但是我没有复制过来不知道为啥我的总是下载一点就...
  • ch15332070139
  • ch15332070139
  • 2018年01月17日 16:18
  • 2

怎样查看mysql pid文件路径 文件位置

当MySQL实例启动时,会将自己的进程ID写入一个文件中——该文件即为pid文件。该文件可由参数pid_file控制,默认位于数据库目录下,文件名为主机名.pid: mysql> show va...
  • u010098331
  • u010098331
  • 2016年03月03日 10:01
  • 5414

percona server的安装启动配置

1,调整最大文件数限制 ulimit -n 1024 #这个是默认值 echo ulimit -n 65535 >>/etc/profile source /etc/profi...
  • minghuiguangdian
  • minghuiguangdian
  • 2014年09月13日 16:01
  • 1241

使用puppet来实现自动化安装openstack mysql节点

想使用puppet来实现自动化安装openstack s
  • zuopaide
  • zuopaide
  • 2014年08月19日 19:59
  • 4310
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MYSQL启动后报:ERROR! The server quit without updating PID file错误的问题解决
举报原因:
原因补充:

(最多只允许输入30个字)