Mysql
在生產數據庫上創建分區
我有一個執行良好的生產 MySQL 5.1 數據庫,但我想提高查詢性能。我從來沒有使用過分區,只是瀏覽了手冊。
我有兩個表涉及列上的複合鍵:
Bill_Num Bill_Date
我想在 Bill_Date 創建分區。該表包含四年的記錄。我想知道新的分區表將如何適應未來幾年?我還想知道是否需要對現有查詢中的表名進行更改,並將表名替換為新的分區表名?
我想知道新的分區表將如何適應未來幾年?
我相當肯定,根據 5.1 文件,您必須更改表添加分區才能處理未來幾年。
我還想知道是否需要對現有查詢中的表名進行更改,並將表名替換為新的分區表名
完成此設置後,您是否需要使用“舊”表?如果沒有,我將按照以下步驟操作:
- 在表名“mytable_new”下根據需要創建分區表
INSERT INTO mytable_new SELECT * FROM mytable
RENAME TABLE mytable TO mytable_old
RENAME TABLE mytable_new TO mytable
這應該避免更改查詢的需要。如果您的表的寫入量非常大(如果您需要對它進行分區,我認為它一定是這樣!),您可能希望有一個維護時間範圍,在該時間範圍內它處於離線狀態,直到操作完成。
希望這可以幫助。