MySQL 實戰筆記

2022-01-28 15:39:49 字數 638 閱讀 5488

大體可以分為:

總結:聯結器負責跟客戶端建立連線、獲取許可權、維持和管理連線:

mysql -h$ip -p$port -u$user -p
show processlist可以檢視狀態。

建立連線比較複雜,建議使用中儘量減少連線的動作,盡量使用長連線。但是全部使用長連線之後,mysql 占用記憶體漲的特別快,這是因為 mysql 在執行過程中,臨時使用的記憶體是管理在連線物件裡的。這些資源在連線斷開時才釋放。可能或導致記憶體趙勇太大,被系統強行殺掉oom,從現象看,就是 mysql 異常重啟。

可以考慮兩種方案:

定期斷開長連線。

如果使用的是 mysql 5.7 或更新的版本,可以在每次執行乙個比較大的操作之後,執行mysql_reset_connection來重新初始化連線資源。

拿到乙個查詢請求後,想到查詢快取檢視,之前是不是執行過這條語句。查詢快取,弊大於利,只要有對錶的更新,這個表的查詢快取就會被清空。更新壓力大。除非你的業務表就是有一張靜態表。mysql 8.0 直接將查詢快取模組刪除了。

對 sql 語句做解析。

優化器階段完成後,語句的執行方案就確定了。

高效能mysql實戰 筆記(一)

模擬電商資料庫設計及架構優化實戰 只設計資料庫設計,不包括前後端 專案說明 模擬電商專案 一 所有資料庫物件名稱必須使用小寫字母並用下劃線分割 二 所有資料庫物件名稱禁止使用mysql保留關鍵字 如表名為from 三 資料庫物件的命名要見名識義,並且最好不要超過32個字元 例 使用者資料庫表 mc ...

Mysql實戰學習筆記四 鎖

全域性鎖 全域性鎖就是對整個資料庫例項進行加鎖。命令為flush tables with read lock。執行後整個庫處於唯讀狀態,資料增刪改語句,資料定義語句 建表,修改表結構 和更新類事務提交都會被阻塞。全域性鎖常用於myisam資料庫的備份,加上唯讀鎖之後備份。但是整個庫唯讀存在風險。使用...

mysql實戰45講筆記 07

07 行鎖功過 怎麼減少行鎖對效能的影響 mysql的行鎖是在引擎層由各個引擎自己實現的,不是所有資料庫都支援行鎖比如myisam 行鎖就是針對資料表中行記錄的鎖。在innodb事務中,行鎖是在需要的時候才加上的,但並不是不需要了就立刻回訪,而是等到事務結束時才釋放,這就是兩階段鎖協議。因此,如果事...