我在JBM 1.4中使用JBoss-4.2.2.GA,我看到MySQL上的jmsdb模式中的jbm_tx表在增长。当我从表中选择时,我可以看到它中一次只有5行。
为什么表会在磁盘上增长到超过6GB的大小?当它这样做时,我的应用程序和数据库遭受了超长的查询时间。
有没有办法阻止.idb文件变得如此之大?
答案 0 :(得分:2)
表格文件将在数据增长时增长,但是当更改(插入/更新/删除)在真实内容之间创建间隙时,它们也可能会增长。 运行此命令以区分案例:
的MySQL>从information_schema.tables中选择TABLE_SCHEMA,TABLE_NAME,TABLE_TYPE,ENGINE,TABLE_ROWS,DATA_LENGTH,INDEX_LENGTH,DATA_FREE;
(追加“where table_schema ='.....'”以限制输出到某个数据库。)
如果你看到DATA_FREE的大值,你就会有差距。使用“OPTIMIZE TABLE”删除它们,有关详细信息,请参阅MySQL文档。