暂无图片
有个千万行数据的表,每天凌晨批量删除上万行,一个个删除,然后就会出现增删改都会被mysql拒绝?
我来答
分享
李华
2021-10-21
有个千万行数据的表,每天凌晨批量删除上万行,一个个删除,然后就会出现增删改都会被mysql拒绝?

怎么避免出现这种情况的,重启站点后才能恢复正常

我来答
添加附件
收藏
分享
问题补充
3条回答
默认
最新
cqiwen

这么大的表应该有主键吧?记得每删除一条或几千条进行一次commit;并且删除时条件中要带上主键或者索引列,否则可能锁表。

暂无图片 评论
暂无图片 有用 0
打赏 0
薛晓刚

批量删除,不要一个个删除。但是最好不要这样做。

需求可以变通实现。

暂无图片 评论
暂无图片 有用 0
打赏 0
Uncopyrightable

建议才分表或者分区表方式,缩小影响范围;

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
MySQL数据库的error_log表中LOGGED、THREAD_ID、PRIO、ERROR_CODE、SUBSYSTEM、DATA等字段表示的什么意义?
回答 1
已采纳
errorlog表中的字段意义如下:LOGGED:错误事件的时间戳,精确到微秒。THREADID:MySQL的线程id,对于后台线程,该值为0。PRIO:错误事件的优先级。ERRORCODE:错误代码
请问 :mysql的谓词锁是干啥用的?
回答 1
https://dev.mysql.com/doc/refman/5.7/en/innodblocking.htmlinnodbpredicatelocks空间索引的谓词锁:解决空间空间索引的表的隔离
说到索引,请教各位,我insert到MySQL,能不能暂时不生成日志,因为我发现我插入性能不高,巅峰就一千每秒,我想提高插入速度去,有啥好办法?MySQL 8
回答 3
已采纳
日志都不想要了那就是不那么在乎安全性了是吧直接把双一给改了,减少刷盘次数就行了。setglobalinnodbflushlogattrxcommit0;setglobalsyncbinlog0;风险就
mysql安装时选择server only显示no packages found,应当如何解决?
回答 1
已采纳
虽然我没有怎么在windows下用过。但是应该也是一步步点下去的。你这个可能是安装包有问题。你从官方下载msi的。试试。
MySQL里lastday函数里放sql查询结果报解析错误,但是放具体日期没问题,这个怎么解决?
回答 1
已采纳
你看下你传入的字段是什么类型的,格式是什么官方文档https://dev.mysql.com/doc/refman/8.0/en/dateandtimefunctions.htmlfunctionla
mysql访问本地数据库是否会走网卡
回答 1
这里有两个缘由:一是mysql连接本机的话,可能走socket途径而非网卡(应该不是你遇到的问题)二是在默认情况下,wireshark是抓不到本地流量的,可以参考https://www.cnblogs
MySQL数据库创建成功了,但是不在窗口显示怎么办?
回答 1
已采纳
左边刷新一下。或用命令直接USE 
有没有哪位大佬给个实现 第一个结果集转换成第二个结果集格式的SQL写法
回答 1
已采纳
有几种方式,是通过SELECT…CASE写法函数计算方式,另一种是pivot,看看符合不符合要求。自己写,才能理解
mysql 8源码编译安装 已经安装好后,如果再新加选项?
回答 2
已采纳
安装so的插件。比如mgr和clone的这些都是后续插件安装的。
为什么IO调度算法选择deadline/noop,一般不使用CFQ(Completely Fair Queuing,完全公平调度)?
回答 1
已采纳
因为CFQ请求按照进程分别放入进程对应的队列中。CFQ的公平是针对进程而言的,提交的每个I/O请求的进程都有自己的I/O队列,轮转调动队列。默认先从当前队列中取出4个请求来处理,然后处理下一个队列中的