如何提高mysql数据库插入的性能

时间:2013-07-18 05:40:30

标签: php mysql database performance database-performance

处理与Web报废相关的PHP项目,我的目标是将数据存储到mysql数据库中,我在9列表中的3个索引上使用唯一键索引,记录超过5k。

  1. 我应该检查程序级别的唯一数据,比如在数组中放置值,然后在插入数据库之前进行比较吗?
  2. 有什么方法可以加快我的数据库插入速度吗?

5 个答案:

答案 0 :(得分:1)

使用PDO,mysqli_ *函数来增加对数据库的插入

答案 1 :(得分:0)

您可以创建当前表的副本,但任何字段都没有索引。将数据存储在此表中。

然后使用事件将数据从临时表移动到主表中。将数据移动到主表后,从临时表中删除if。

答案 2 :(得分:0)

您可以使用触发器关注更新。你应该做更新表,你必须右键触发该表。

答案 3 :(得分:0)

您可以使用" INSERT IGNORE"在您的查询中。这样,如果违反任何唯一约束,则不会插入记录。

示例:

INSERT IGNORE INTO table_name SET name = 'foo', value = 'bar', id = 12345;

答案 4 :(得分:0)

永远不要创建重复的表这是一种反SQL模式,这使得处理数据变得更加困难。

也许PDO和准备好的声明会给你一点提升,但不要指望奇迹。

multible INSERT IGNORE也可以给你一点提升,但不要指望奇迹。

你应该像这样生成一个多插入查询

INSERT INTO database.table(columns)VALUES(values),(values),(values) 请记住,保持mysql将拥有的最大数据包大小。 这样,索引文件必须更新一次。