我有这种情况
相同数据库中的2个,一个在DEV服务器上,另一个在PROD服务器上(完全独立的服务器)
我的Web应用程序与DEV DB一起在DEV服务器上运行。 我的存储过程在DEV DB上运行0.300秒-0.600秒, 但是,相同的过程在PROD服务器上运行3-12秒。(来自DEV服务器上的同一个Web应用程序) DB结构,索引和数据都是相同的。显着延迟。
唯一不同的是版本 DEV - 5.0.67-社区 PROD - 5.1.54-community
对于正常的sql语句,延迟差别不大。
可能的原因是什么? 还会设置mysql缓存提高性能吗?
干杯
顺便提一下,让我补充一下,我的存储过程就是为其他proc创建临时表来使用数据。生产数据库也连接到另一个具有传入流量的PROD网络服务器上的同一个网络应用程序。但是为什么这只会发生在我的存储过程中。我的其他查询或普通查询在时间上没有显着差异。死锁会导致延迟吗?
DEADLOCK was detected, OS WAIT ARRAY INFO: reservation count 17394257, signal count 14459620 --Thread 6600 has waited at G:\mysql-5.1.54-winbuild\mysql-community-nt-5.1.54-build\storage\innobase\ Mutex at 02878180 created file .\dict\dict0dict.c line 713, lock var 1 waiters flag 1 Mutex spin waits 0, rounds 367825986, OS waits 15398330 RW-shared spins 2245011, OS waits 810719; RW-excl spins 2893516, OS waits 820381 ------------------------ LATEST DETECTED DEADLOCK ------------------------ 110408 9:05:45 *** (1) TRANSACTION: TRANSACTION 0 203543446, ACTIVE 0 sec, OS thread id 6584 fetching rows mysql tables in use 2, locked 2 LOCK WAIT 761 lock struct(s), heap size 60736, 30170 row lock(s)
答案 0 :(得分:0)
要看的事情: