update:

单个文件大小达到4G限制,是因为当时操作系统普遍是32位

现象:
前两天发现4区的数据表查不到近几天的数据,查了很多原因log_manager和log_agent都运行正常,程序肯定没问题,对比了其他区的情况,一切正常,怎么会这样呢?奇怪,难道是数据库出问题了?

解决:
进入数据表 输入” ls -lth |grep G “ 察看所有大小过G的文件,发现4区的tableName.MYD竟然达到了4G
已经达到了单表大小最大限制。晕,删数据吧!
先备份一下数据表

1
mysqldump dbname tablename > /backup/tablename_backup_xxxx_xx_xx.sql

然后清除了前几个月的旧数据。
但是如果再查看那几个MYD文件发现占用的磁盘大小仍然是4G ,不过现在log_manager已经开始向表里面写数据了,删除记录不会改变MYD文件占用的磁盘空间。
把这几个表优化一下看看情况吧:

1
2
mysql> optimize table char_event_svr_20;

再察看MYD文件的大小,变成了1.8G

有一个达到4G的表经过优化后竟然占用的磁盘空间只有几百兆。