- MySQL的基本邏輯架構是怎樣的?
如下圖所示,MySQL基本邏輯架構主要分爲server層和存儲引擎層,server層主要包括 連接器、分析器、優化器、執行器、查詢緩存這些,存儲引擎層負責數據的存儲和提取。其架構模式是插件式的
- 如何查看與當前數據庫建立的所有的連接的狀態?
show processlist
- 與客戶端建立連接默認超時時間是?
答:八個小時 - 有時候MySQL佔用的內存長的特別快,可能的原因是?
答:MySQL在執行過程中臨時使用的內存是管理在連接對象裏面的,這些資源會在連接斷開時才釋放,所以如果長期累積下來,可能導致內存佔用太大 - 如何避免4中的問題
- 定期斷開長連接。使用一段時間,或者程序裏面判斷執行過一個佔用內存的大查詢後,斷開連接,之後要查詢再重連。
- 如果你用的是 MySQL 5.7 或更新版本,可以在每次執行一個比較大的操作後,通過執行 mysql_reset_connection 來重新初始化連接資源。這個過程不需要重連和重新做權限驗證,但是會將連接恢復到剛剛創建完時的狀態。