目前我們正在使用Sybase ALTER命令將生產數據庫表從INT轉換爲BIGINT。 其中一個表格有15億行,我們無法在一個週末時間範圍內轉換(跑了將近43小時,然後我們殺死了它&恢復了數據庫轉儲)。BIGINT轉換練習Sybase ASE 15 7
任何其他建議將此錶快速轉換爲BIGINT。此表上有聚集的,唯一的和非聚集的索引。
我在考慮下面的解決方案:你可以建議最好的方法來做到這一點?
- 創建一個新列&用舊值更新,然後刪除舊列,然後重命名新列。
- BCP出來的數據,截斷表,改變與新的數據類型的表結構,然後BCP數據
- 分區表到小表,然後修改表&再次合併。
我的選擇是:BCP輸出數據,截斷表格,用新的數據類型改變表格結構,然後改變數據中的BCP,加載速度應該快一些,然後對一百五十億行進行一些更新,並且只需要做是改變表的結構。 – theweeknd
有人可以證實ASE中的加載速度比更新速度快,我在考慮智商,現在我看到他使用的是ASE,ASE中的DML與智商相比相當快,所以也許我錯了? – theweeknd
謝謝,但我在該表上有索引(1個集羣和3個非集羣),所以我們需要重建索引,如果我去BCP - 這又需要很多時間。 – NaguG