使用 Mysql 多插入语句(在一个 INSERT 语句中插入多条记录)。对于我可以一次性插入的记录数或数据大小(字节),是否有最佳数量?
问问题
1391 次
3 回答
1
限制是行的大小,一行查询是有限的,
服务器的默认 max_allowed_packet 值为 1MB。如果服务器需要处理大查询(例如,如果您使用大 BLOB 列),您可以增加此值。
你可以在 mysql.cnf 文件中定义它
参数是
[mysqld]
max_allowed_packet=16M
或设置为
shell> mysql --max_allowed_packet=32M
关联 :
http://dev.mysql.com/doc/refman/5.1/en/packet-too-large.html
于 2009-12-28T14:44:20.337 回答
0
多多益善。做一个大规模的插入比各种简单的插入要快得多。您消除了大量插入的开销,而不是许多小的插入。
于 2009-12-28T18:06:19.697 回答
0
就在这里。这不是您的系统和设置允许的最大值。
通过仔细的基准测试可以看出,如果你不断增加行数,在某个点之后,多插入停止产生任何好处,然后慢慢开始表现更差。
最佳值取决于您的系统、您的设置和数据集。运行基准测试将帮助您找到最佳尺寸。
于 2018-08-22T19:04:29.430 回答