从mysql中删除表错误1501_MySQL删除表格中的重复记录,并另辟蹊径解决超时报错ERROR 2013 (HY000): Lost connection to MySQL server duri...

实验环境

window10专业版&&MySQL8.0

问题背景

1.表格中出现许多重复记录需要删除

2.删除过程中因数据量过大出现超时报错ERROR 2013 (HY000): Lost connection to MySQL server during query

代码

//new为删除后生成的新表,table为原表

create table new

select distinc* from table

出现的问题

数据量过大时会超时,报错ERROR 2013 (HY000): Lost connection to MySQL server during query

先查看各项超时的默认指标

show global variables like '%timeout%';

show global variables like 'max_allowed_packet';

进入C:\ProgramData\MySQL\MySQL Server 8.0目录修改my.ini文件(管理员模式打开)

按照网上方法将max_allowed_packet将默认值改大,这里我直接改成了1024M(激进改法)

3481a9372910

并在mysqld下方添加要改大的timeout值(不添加则为默认值)

3481a9372910

我的激进改法

connect_timeout=1200

mysqlx_connect_timeout=1200

mysqlx_read_timeout=1200

mysqlx_write_timeout=9000

net_read_timeout=1200

net_write_timeout=9000

重新启动MySQL服务,再次试验后发现还是不行。多次试验各种改大timeout值后依然不成功,可能是数据量实在太大(数据长度7GB),因为课程项目赶中期答辩,只能在此埋个坑,选择了另一种方法:删除属性减少对比量。将十几个属性忍痛删至三个后(去重成功后再通过连接查询补回来),运行成功。难道这就是欲练此功必先自宫吗?哭了。

3481a9372910

阉割版数据运行成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值