mysql效能優化學習筆記 引數介紹及優化建議

2021-09-09 02:08:27 字數 1280 閱讀 4945

mysql引數介紹(客戶端中執行),盡量只修改session級別的引數。

全域性引數(新連線的session才會生效,原有已經連線的session不生效)

會話引數

sort_buffer_size:需要注意,每個連線分配指定大小的記憶體;

join_buffer_size;

read_buffer_size;

read_rnd_buffer_size。

上述都為每個程序分別進行設定,所以要注意配置大小。

innodb_buffer_pool_size:總記憶體 - (每個執行緒所需記憶體 * 連線數) - 系統保留記憶體

key_buffer_size:主要用於myisam引擎

innodb i/o相關配置

innodb_log_files_in_group * innodb_log_file_size
0:每秒進行一次log寫入cache,並flush log到磁碟。如果mysql關閉或重啟會導致至少1秒日誌的丟失。

1:『預設』,在每次事務提交執行log寫入cache,並flush log到磁碟。保證不會導致事務日誌的丟失。

2:【建議】,每次事務提交,執行log資料寫入到cache。每秒執行一次flush log到磁碟。

myisam i/o相關配置

off:每次寫操作後重新整理新建緩衝區的髒塊到磁碟

on:只對建表是指定了delay_key_write選項的表使用延遲重新整理。

strict_trans_tables

no_engine_subtitution

no_zero_date

no_zero_in_date

only_full_group_by:select字句需要全部列出group by欄位,否則報錯。

效能優化順序

mysql效能優化學習筆記

數量比頻率更好 64位使用32位的伺服器版本 32位不能使用超過4g的內容,因此選擇的時候需要注意。myisam innodb cpu 64位的cpu執行64位的系統 高併發的場景,cpu數量比頻率重要 cpu密集型的場景和複雜sql則頻率越高越好 記憶體 i o 選擇伺服器版本,而不是桌面版本。核...

效能優化學習筆記

js css鬆散耦合盡量避免直接用js操作樣式,改為控制類名 element.classname edit 解耦應用邏輯和事件處理程式 使用常量優化效能,提公升 維護性 避免全域性查詢 優化迴圈效能乙個基本的for迴圈 for let i 0 i values.length i 乙個減值操作的for...

ORACLE SQL效能優化(學習筆記)

記錄小的表應該在from的最後 多表查詢時 寫條件時from最後的哪個表應該先寫 where條件時要先寫表之間的連線 select 字句避免用 儘量減少訪問資料庫的次數 刪除全表時用truncate替代delete 不可恢復 盡量多使用 mit 使用表的別名 alias 使用exists替代in 並...