MySQL速度问题

时间:2010-09-02 13:28:13

标签: mysql performance

我在一台机器上有两个mysql数据库。 db1和db2。如果db1使用密集,请查询db2等待db1查询完成?换句话说,mysql使用并行计算来查询不同数据库中的查询?

例如,大的query1来到db2。它计算5秒。在1秒之后,db1的查询2很少,它计算1秒。 query2结果将在5秒后返回。 (等待query1)或1秒后返回。立即?

3 个答案:

答案 0 :(得分:0)

根据您描述的内容,两个查询都将并行运行。

答案 1 :(得分:0)

数据库不会相互冲突。您可以将它们更多地视为表的逻辑分组。同一数据库中的查询也不会相互冲突,除非它们使用相同的表。即使这样,多个SELECT也可以在同一个表上同时发生。

在修改表时(UPDATE,DELETE,INSERT),您实际上只会遇到“冲突”。即便如此,InnoDB表也可以同时运行修改和选择查询。 MyISAM表几乎总是“冲突”,因为它使用表锁定进行修改。

答案 2 :(得分:0)

2条建议(如果您需要很多请求)

1-将使用cron ... 2-考虑升级到MariaDB(如果你有可能)

例如

* * * * *   /usr/local/bin/php /home/__user_/public_html/..phpFile.php
* * * * *   /usr/local/bin/php /home/__user_/public_html/..phpFile2.php

在phpFile1中,您提出了对db1的请求。

在phpFile2中,您提出了对db2的请求 等...

细微差别在于cron1将启动并且cron2不会“等待”cron1完成,这样cron1和cron2可以同时工作。

**也;我自己从Mysql 5.6升级到MariaDB 10,速度很快;) ••最后一点,MariaDB有ARIA引擎(它是MyISAM,但具有更强大的功能,非常快......)