Mysql

將 MySQL 數據庫一分為二可以緩解伺服器“連接過多”的問題?我不這麼認為

  • May 21, 2010

我被要求將 MySQL 分成兩部分,它是一種水平分區,其中一些行對應一個站點,而另一些對應另一個站點。

但他們想將其拆分為同一 MySQL 伺服器中的兩個數據庫。

我不是數據庫專家,但我想將它們放在具有相同記憶體和處理器數量以及相同平台的同一個 MySQL 伺服器中不會有任何改進。

我們試圖避免的是“連接太多”的問題。

不建議在同一台伺服器上執行多個實例作為連接限制的解決方案。

如果您指的是同一伺服器上同一實例上的多個數據庫,那主要是架構考慮,不一定是資源問題的直接解決方案。

聽起來您的伺服器必須進行調整。我之前提供過連接調整建議,這應該會有所幫助:

如何在 Mysql 中設置 my.cnf 以便沒有連接限制?

首先,您應該調查連接不足的原因。客戶端是否會抓住一個連接然後長時間保持它?Web 伺服器的每個子節點是否都有自己的連接,或者伺服器是否管理連接池?

我建議打開通用查詢日誌進行調查 - 它記錄連接詳細資訊。請注意,您可能不希望在一般生產使用中登錄一般查詢!

在同一台伺服器上擁有多個數據庫不會更改與伺服器的連接。

增加連接只是因為您確實擁有大量已知可以正確管理連接的客戶端。但是,在大多數情況下,“連接太多”表明存在客戶端問題。

引用自:https://serverfault.com/questions/144121