Mysql表数据比较大的情况下修改添加字段的方法

Mysql表数据比较大的情况下修改添加字段的方法

如果一张表在后期的维护中,发现需要加字段以满足当下的需求,但是数据量很大有百万甚至千万级的数据,要如何修改表字段呢。

直接执行使用alter语句肯定是不现实的,这涉及到锁表重建表结构等操作,假设这时候还有其他线程在跑,等一天都改不过来。

这里整理一个比较简单的方法

1、对照要操作的表结构创建一张临时表
CREATE TABLE product_copy LIKE product;
2、将要修改的表结构改在临时表上面
3、导出表product数据,并导入到零时表product_copy
4、使用RENAME语句替换表名
RENAME TABLE product TO product_bak, product_copy TO product;

但是数据量太大的情况下,导出导入也需要一定的时间,而且数据容易出错,这里推荐使用datagrip的导入导出工具,或者idea的数据源插件,最好使用csv文件来导入导出。

1、在表名处右击选择导入数据

在这里插入图片描述

2、在导入界面能清楚的看到字段的对应关系,有问题可以直接调整,所见即所得

在这里插入图片描述

3、如果导出的时候导出了表头,还可以在第一行右击将此行标记为表头,更方便看到数据的对应

在这里插入图片描述

分享到这里就结束了,欢迎大家讨论指正。

  • 1
    点赞
  • 6
    收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

野猪佩奇ii

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值