欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mysql如何為大表新增字段或索引

 更新時間:2025年03月08日 16:20:46   作者:Ability Liao  
解決MySQL大表增加或增加索引操作超時的問題,可以通過建新表、加字段或索引、導數(shù)據(jù)到新表、改表名等步驟來實現(xiàn),可以分批導入數(shù)據(jù)以防止超時,同時,還介紹了如何查詢表中的所有字段以及在IDEA中設置執(zhí)行超時時間的方法

問題

mysql 為大表增加或增加索引等操作時,直接操作原表可能會因為執(zhí)行超時而導致失敗。

解決辦法如下。

解決辦法

(1)建新表-復制表A 的數(shù)據(jù)結構,不復制數(shù)據(jù)

create table B like A;

(2)加字段或索引-表B加上新字段或索引

(3)導數(shù)據(jù)到新表-把原有數(shù)據(jù)導入新表

  • 未新增字段時
insert into B select * from A [where 條件]
  • 添加了新字段時。
  • 假設添加字段名為data_code(默認值為空),且字段位于id之后
insert into B select id, '' data_code, 其他舊字段 from A [where 條件]

數(shù)據(jù)量達到幾千萬時,可以添加where 條件,分批將數(shù)據(jù)導入到新表。防止數(shù)據(jù)導入超時。

(4)改表名-修改表A 的名稱為A_old,修改B表的表名為A

備注

  • (1)MySQL查詢一個表中的所有字段的方法
select CONCAT(COLUMN_NAME ,',') from information_schema.COLUMNS where table_name = '表名' and table_schema = '庫名';
  • (2)可以在idea中的database上執(zhí)行sql,上面可以設置執(zhí)行超時時間。

總結

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

最新評論