数据库
首页 > 数据库> > MySQL – INSERT DELAYED < - 已弃用现在怎么办?

MySQL – INSERT DELAYED < - 已弃用现在怎么办?

作者:互联网

我刚看了MySQL doc的https://dev.mysql.com/doc/refman/5.7/en/insert-delayed.html

我打算使用INSERT DELAYED,但我发现这已经被弃用了.

我仍然需要这个功能来兼容处理一些非常大的数据传输的一些PHP代码.我很高兴更新我的PHP,但我不知道如何实现相同的功能.

现在它已被弃用,我们如何实现与传统INSERT DELAYED相同的结果?

解决方法:

根据MySQL 5.5. Documentation

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