我在一台机器上有两个mysql数据库。 db1和db2。如果db1使用密集,请查询db2等待db1查询完成?换句话说,mysql使用并行计算来查询不同数据库中的查询?
例如,大的query1来到db2。它计算5秒。在1秒之后,db1的查询2很少,它计算1秒。 query2结果将在5秒后返回。 (等待query1)或1秒后返回。立即?
答案 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,但具有更强大的功能,非常快......)