Mysql的插入,更新速度很慢(Mysql insert,updates very slow)

2019-09-02 11:14发布

我们的服务器数据库是在MySQL 5.1中,我们已经在我们的db.We 754个表创建一个表中的每个项目。 因此,大不表。 从过去一个星期我已经注意到在插入和更新很长的延时对任何table.If我创建一个新表并插入到它,它需要一个最小插入约300区域经济共同体。

凡为我们在同一台服务器的测试数据库有597代表相同的插入是非常快的测试数据库。

默认引擎是MYISAM。 但是,我们必须InnoDB的几桌。

有运行一些触发器。 我删除后触发它已经成为了一些什么更快。 但它的速度不够快。

Answer 1:

使用DESCRIBE知道你的查询执行计划。

看到更多的http://dev.mysql.com/doc/refman/5.1/en/explain.html其用法。



Answer 2:

作为@swapnesh提到,DESCRIBE命令是性能调试非常有用。 您也可以检查您的安装使用的问题:

  • https://raw.github.com/rackerhacker/MySQLTuner-perl/master/mysqltuner.pl

您可以使用这样的:

wget https://raw.github.com/rackerhacker/MySQLTuner-perl/master/mysqltuner.pl
chmod +x mysqltuner.pl
./mysqltuner.pl

当然,在这里我假设你运行某种基于Unix系统的。

你可以使用OPTIMIZE 。 根据手册它执行以下操作:

整理表数据和相关联的索引数据的物理存储,以减少存储空间和访问表时提高I / O效率。 每个表所做的确切变化取决于该表使用的存储引擎

语法是:

OPTIMIZE TABLE tablename


Answer 3:

刀片典型地快于散装而不是一个接一个地制成时。 尝试插入10,30,或100条记录每条语句。

如果您使用JDBC您可以实现与配料相同的效果,而无需改变SQL。



文章来源: Mysql insert,updates very slow