MySQL .idb迅速发展

时间:2016-06-07 14:09:59

标签: mysql database jpa eclipselink

我有一个包含日志的数据库。每个日志在不同的时间内都处于活动状态,并且在活动时间内会持续添加日志。

这是一个非常简单的表,SHOW CREATE TABLE显示:

'TESTLOG', 'CREATE TABLE `TESTLOG` (
`Data` longtext NOT NULL,
`id` int(11) NOT NULL AUTO_INCREMENT,
 PRIMARY KEY (`id`)
 ) ENGINE=InnoDB AUTO_INCREMENT=672 DEFAULT CHARSET=utf8'

表中的所有数据目前都是6.52 Mb,这很棒。但是服务器正在快速丢失可用空间,我将该位置追溯到/ var / lib / mysql / dbname /到TESTLOG idb文件。

参见例如

[root@server bin]# du -sh /var/lib/mysql/dbname/* | grep TESTLOG
12K     /var/lib/mysql/dbname/TESTLOG.frm
1.2G    /var/lib/mysql/dbname/TESTLOG.ibd

大约30分钟前,我不得不把桌子重新加载,因为它占用了所有空间。目前文件增长大约40-100 Mb /分钟。

我该怎么办?表格中数据的大小并没有快速上升。在过去的10-15分钟里,它的重量增加了大约40kb。我不知道这是怎么做的以及如何阻止它 - 昨天不是这样的,我想不出任何与测试日志有任何关系的事情。

我真的希望你能帮忙 - 这很糟糕! :)

/奔

1 个答案:

答案 0 :(得分:0)

正如Marc B指出的那样,问题在未经注释的交易中存在。我的信念是多线程试图更新和读取多个事务,并以某种方式发生内部锁定。 DAL层中的互斥锁修复了问题:)