MySQL – INSERT DELAYED < - 已弃用现在怎么办?
作者:互联网
我刚看了MySQL doc的https://dev.mysql.com/doc/refman/5.7/en/insert-delayed.html
我打算使用INSERT DELAYED,但我发现这已经被弃用了.
我仍然需要这个功能来兼容处理一些非常大的数据传输的一些PHP代码.我很高兴更新我的PHP,但我不知道如何实现相同的功能.
现在它已被弃用,我们如何实现与传统INSERT DELAYED相同的结果?
解决方法:
INSERT DELAYED works only with MyISAM, MEMORY, ARCHIVE, and BLACKHOLE tables. For engines that do not support DELAYED, an error occurs.
你可以降级到MySQL 5.5(当然,我在开玩笑).我有三个建议.请仔细研究一下.
建议#1
您可以设置MySQL Replication并执行以下操作
>批量插入主服务器上的表,其存储引擎是BLACKHOLE.
> Slave上的同一个表是InnoDB.在Slave上执行SELECT
>查看我在How to do something like UPDATE DELAYED in MySQL年的3.5岁
建议#2
调整InnoDB环境以处理更快的写入.请参阅我在4.5岁的帖子How to use insert delay with the InnoDB engine and use less connection for insert statements?和Mysql load from infile stuck waiting on hard drive
建议#3
自定义批量插入以使用扩展插入,一次加载固定数量的行,就像mysqldump一样.
标签:mysql-5-7,mysql,insert,bulk-insert 来源: https://codeday.me/bug/20190805/1592355.html