前几天想为大数据表添加字段,出现了

2013 - Lost connection to MySQL server during query

查看数据条数

+-----------+
| count(id) |
+-----------+
| 6367286 |
+-----------+

重启机器只开启mysql后,添加字段成功了

为了避免这种问题,记录一下比较妥帖的办法

1.创建一个临时的新表,复制旧表的结构

create table `tmp` like `goods`;

2.给新表加上新增的字段

ALTER TABLE `tmp`
    ADD COLUMN `num`  int(10) NOT NULL DEFAULT 0 AFTER `unit`;

3.把旧表的数据复制过来

insert into tmp(id,name,unit) select id,name,unit from goods;

4.重命名

rename table goods to goods_bak;
rename table tmp to goods;

一般情况下,一百多万的数据量,也可以直接进行加字段操作

但是得看服务器的运行情况,如果有大量服务占用内存,添加字段可能会出现问题

相关文章:

  • 2021-12-31
  • 2022-12-23
  • 2021-08-19
  • 2023-03-30
  • 2022-12-23
  • 2023-03-30
  • 2021-11-18
  • 2021-07-14
猜你喜欢
  • 2021-11-18
  • 2021-10-12
  • 2022-12-23
  • 2021-11-18
  • 2021-12-05
  • 2021-12-12
相关资源
相似解决方案