数据库表索引或者结构变更
ALTER 修改表(不推荐)
直接修改表,会导致产生MDL锁,影响到所有关于此表操作不可执行(不推荐)
alter table new_table_name add column column_name type;
创建与查询(推荐)
1.创建与原表相同结构不同表名的新表
create table new_table_name like old_talbe_name;
2.修改要变更的表字段或者结构操作
alter table new_table_name add column column_name type;
3.进行数据同步
insert into new_talbe_name select * from old_table_name;
# 可以改进为根据某些条件进行批量插入
insert into new_talbe_name select * from old_table_name where id between 1 and 1000;
4.修改表名(旧表可选择删除)
alter table old_talbe_name rename to before_old_table_name;
alter table new_talbe_name rename to old_table_name;
也可以:
RENAME TABLE old_talbe_name TO before_old_talbe_name,
new_talbe_name TO old_talbe_name;