一个 MySQL 查询会冻结所有其他即将到来的查询吗?
Posted
技术标签:
【中文标题】一个 MySQL 查询会冻结所有其他即将到来的查询吗?【英文标题】:Does one MySQL Query Freeze All Other Upcoming Queries? 【发布时间】:2016-04-09 15:45:36 【问题描述】:我想每小时执行一次 mysql 查询以计算一个表中的一些行(超过 10M 行)并更新另一个表中的 int 值。查询大约需要 1-2 分钟才能完成。在处理这个查询时,我可以运行其他 MySQL SELECT 查询吗?
【问题讨论】:
原则上是的。数据库可以同时支持多个查询。当然,可用资源取决于您的硬件和系统参数。尝试同时测试运行多个查询,看看会发生什么。 只计算?为什么不在“插入”处增加一个计数器呢?使用简单的锁定机制将保持计数线程安全。但如果你有多台机器,那我就不知道了。 @huseyintugrulbuyukisik 它适用于我必须保留所有不同值及其计数的应用程序。好复杂哦 【参考方案1】:是的,数据库结构旨在用于几乎同时访问数据。每个查询的速度取决于分配给每个查询的服务器资源,因此您可能会遇到比预期更慢的查询时间。
【讨论】:
以上是关于一个 MySQL 查询会冻结所有其他即将到来的查询吗?的主要内容,如果未能解决你的问题,请参考以下文章