如何在后台模式下将数据插入MYSQL数据库?
数据包含了大约2000万行的庞大数量
我假定通过“背景模式”,您的意思是您希望您的INSERT语句的优先级较低,以便在提供数据库时排除并发性和性能问题。
在这种情况下,考虑使用INSERT DELAYED语句来插入行。 从MySQL文档:
INSERT语句的DELAYED选项是对标准SQL的MySQL扩展,如果您的客户端不能或不需要等待INSERT完成,那么它非常有用。 当您使用MySQL进行日志logging时,这是一种常见的情况,并且您还会定期运行需要很长时间才能完成的SELECT和UPDATE语句。
当一个客户端使用INSERT DELAYED时,它立即从服务器得到一个好的结果,当这个表没有被任何其他线程使用的时候,该行被排队插入。
使用INSERT DELAYED的另一个主要好处是来自多个客户端的插入被捆绑在一起并写入一个块中。 这比执行许多单独的插入要快得多。
插入大量数据时,请考虑暂时禁用二进制日志以减lessI / O子系统的压力。