欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

/var/log/pacct文件导致MySQL启动失败的案例分享

程序员文章站 2022-04-26 19:51:08
...

毫无预兆的,MySQL 罢工了。 用 mysql.server 启动脚本启动之后,没有任何提示信息就结束,mysqld进程自然是没有起来。 把 mysql.server 里面 $bindir/mysqld_safe --datadir=$datadir --pid-file=$server_pid_file /dev/null 2&1 这句的输出重定向去掉后运

毫无预兆的,MySQL 罢工了。 用 mysql.server 启动脚本启动之后,没有任何提示信息就结束,mysqld进程自然是没有起来。

把 mysql.server 里面 $bindir/mysqld_safe --datadir=$datadir --pid-file=$server_pid_file >/dev/null 2>&1 这句的输出重定向去掉后运行,结果发现报错: File size limit exceedednohup ... ...
  
这样看来自然是有文件太大了。但查看了 mysql 数据目录下相关的数据库文件和日志文件,最大的也就几百兆。 ulimit -a 查看也没有对文件大小做任何限制。

经过 N 分钟的郁闷之后,决定用 find / -size +2048000k 查找整个硬盘上面的可疑文件。结果是: /var/log/pacct 这个2G多的大文件冒了出来。很显然,这是 SA 激活了 accton 之后产生的日志文件,没给做回滚。二话不说,清空 /var/log/pacct 再启动一次 MySQL ,一切恢复正常!

搞不懂的是为什么 mysql 的启动脚本会受这样一个无关痛痒的进程统计日志的影响而导致 mysqld 进程完全无法启动。估计还是 mysql.server / mysqld_safe 脚本逻辑的问题。。