2011-03-30 71 views
2

MySQL .ibd文件增長到3 TB以上,我的RedHat盒子不再支持添加更多磁盤空間。mysql數據庫.ibd文件大小

問題

  • 我如何可以擴展數據庫的存儲?
  • 哪些最佳實踐可以解決此問題?

注:我使用一個.ibd文件每個表,並有一些巨大的表。

回答

1

如果您只是存儲數據,則/var/lib/mysql的數據安裝應該是5TB SATA驅動器。如果您的應用程序寫入繁重,則/var/lib/mysql的數據安裝應爲5TB SAS驅動器RAID10。

如果要升級的磁盤是出了問題,你需要做的元素週期表碎片整理在三(3)的方法之一:

  1. ALTER TABLE myinnodbtable ENGINE=InnoDB;
  2. OPTIMIZE TABLE myinnodbtable;
  3. 定製碎片整理表

您可以手動執行此碎片整理,如下所示:

CREATE TABLE myinnodbtemptable LIKE myinnodbtable; 
INSERT INTO myinnodbtemptable SELECT * FROM myinnodbtable; 
ALTER TABLE myinnodbtable RENAME myinnodbtableold; 
ALTER TABLE myinnodbtemptable RENAME myinnodbtable; 
DROP TABLE myinnodbtableold; 

如果InnoDB表具有約束條件,那麼選項3不起作用,因爲約束條件將消失。

+0

優化表爲我做了。 – 2013-01-15 19:29:54