Apache-2.2
Mysql很慢,開箱即用的配置
我剛剛在 VPS 上安裝了 AMP 堆棧。我登錄到 mysql 控制台,發現查詢速度非常慢。單個更新查詢,針對約 200 行的表中的 1 行需要 0.5 秒才能完成(在我的 Windows 筆記型電腦上完成相同的查詢需要 0.001 秒)。
我認為這與VPS沒有足夠的資源有關,但是在做了一些基準測試之後,即I/O:
1073741824 bytes (1.1 GB) copied, 14.207 s, 75.6 MB/s avg-cpu: %user %nice %system %iowait %steal %idle 0.01 0.00 0.00 0.03 0.00 99.96
和一個PHP benchark 腳本,看來資源沒有問題。PHP 基準測試腳本在 5 秒內完成,而我使用 SSD 的 i7 筆記型電腦需要 17 秒才能完成。
有什麼想法可能是錯的嗎?
問題沒有解決。我移動了託管服務提供商並得到了預期的結果。我不知道最初是什麼導致了這個問題。
一些測試和問題太長而無法發表評論:
您為該表使用什麼引擎(
SHOW CREATE TABLE tablename\G
在底部查找 ENGINE)?記憶體預熱後性能是否有所提高(也就是說,如果您使用略有不同的更新數據執行兩次查詢,第二次執行是否更快)?
你能列出你的 my.cnf 的內容嗎?
strace -cp $(pidof mysqld)
跑步時你會得到什麼UPDATE
?為此,請執行 strace,然後執行查詢,然後在 strace 上按 CTRL-C。它會吐出一些非常方便的值。如果我只有一個猜測,我猜你沒有跳過名稱解析,並且你從一個不響應反向或正向 DNS 的地址連接(或者你
resolv.conf
的配置錯誤)。但這純粹是在沒有上述資訊的情況下在黑暗中拍攝。簡單測試:首先連接(即,mysql
使用適當的主機和埠參數執行 CLI),然後在該互動式會話中執行UPDATE
,看看整體速度是否比使用-e
.