mysql二进制日志文件出错导致mysql服务无法启动

今天打开phpmyadmin发现连不上mysql数据库,重启mysql启动不起来,查看日志发现如下错误

mysqld: File '.\mysql-bin.000370' not found (Errcode: 2)
141120 13:23:13 [ERROR] Failed to open log (file '.\mysql-bin.000370', errno 2)
141120 13:23:13 [ERROR] Could not open log file
141120 13:23:13 [ERROR] Can't init tc log
141120 13:23:13 [ERROR] Aborting

进入mysql/data目录下手动删除mysql-bin.xxxxx相关的文件或者进入mysql命令行执行RESET MASTER删除全部日志,重启mysql。

查询得知Mysql Data目录生成的大量mysql-bin.xxxxx文件是叫做MySQL Binary Log,主要有下面两个作用:

  1、数据恢复。

  2、在主从服务器上提高复制的可靠性。

这些日志可以mysqlbinlog工具进行查看

#mysqlbinlog mysql-bin.xxxxx

如果不需要这些日志文件的话,在my.ini中注释掉以下两行,就不会再生成二进制日志文件了:
#log-bin=mysql-bin
#binlog_format=mixed

不注释的话可以配置自动删除的天数,在mysql配置文件中,找到[mysqld],加上以下语句:

expire_logs_days = 3

也可以直接使用mysql命令配置:mysql> SET GLOBAL expire_logs_days=1;

可以将二进制日志自动删除的天数设为3。不设置的话默认为0,表示不自动删除。






你可能感兴趣的:(MYSQL)