[MySQL] MySQL 系統參數設定
sql_mode=""
主要為sql內部特殊規則限制,通常方便工程師會特別設定成"",代表空值不做任何限制,因為不保證工程師都能寫出高品質的SQL語句
sync_binlog=0
innodb_flush_log_at_trx_commit = 0
兩個特別是影響資料庫刷盤的參數,第一個指binlog刷盤,第二個指資料異動的刷盤,都設定為0速度最優,通常只有Master需要改成雙0,雙1的話安全性最高但最慢
max_connections = 5000
連線數上限
connect_timeout=10
連線timeout秒數
open_files_limit = 65535
能同時開啟檔案的上限
max_allowed_packet = 500M
能接受的封包最大值
transaction-isolation = REPEATABLE-READ
資料安全性隔離等級 RR為預設
query_cache_size = 0
query_cache_type = 0
過時的快取設定,兩組都設定為0,才能徹底關閉
expire_logs_days = 7
binlog保留天數,如果有硬碟空間問題,可以嘗試減少,但是相對備份檔案的有效保存期限
slow_query_log=1
long_query_time=1
slow_query_log_file=/var/lib/mysql/slow.log
log_throttle_queries_not_using_indexes=1000
min_examined_row_limit=1000
log-slow-admin-statements = TRUE
慢查詢相關記錄設定,基本上有點能力的DBA才能處理優化,目前只需要開啟紀錄即可
innodb_file_per_table = 1
讓innodb的data實體檔案 .ibd文件從ibdata1獨立出來,分散寫入改善整體效能
innodb_buffer_pool_size = 3G
*最重要影響資料庫讀取效能沒有之一
innodb引擎的快取層吃多少記憶體的設定,通常試情況設定為實體80%左右佔成
主要為sql內部特殊規則限制,通常方便工程師會特別設定成"",代表空值不做任何限制,因為不保證工程師都能寫出高品質的SQL語句
sync_binlog=0
innodb_flush_log_at_trx_commit = 0
兩個特別是影響資料庫刷盤的參數,第一個指binlog刷盤,第二個指資料異動的刷盤,都設定為0速度最優,通常只有Master需要改成雙0,雙1的話安全性最高但最慢
max_connections = 5000
連線數上限
connect_timeout=10
連線timeout秒數
open_files_limit = 65535
能同時開啟檔案的上限
max_allowed_packet = 500M
能接受的封包最大值
transaction-isolation = REPEATABLE-READ
資料安全性隔離等級 RR為預設
query_cache_size = 0
query_cache_type = 0
過時的快取設定,兩組都設定為0,才能徹底關閉
expire_logs_days = 7
binlog保留天數,如果有硬碟空間問題,可以嘗試減少,但是相對備份檔案的有效保存期限
slow_query_log=1
long_query_time=1
slow_query_log_file=/var/lib/mysql/slow.log
log_throttle_queries_not_using_indexes=1000
min_examined_row_limit=1000
log-slow-admin-statements = TRUE
慢查詢相關記錄設定,基本上有點能力的DBA才能處理優化,目前只需要開啟紀錄即可
innodb_file_per_table = 1
讓innodb的data實體檔案 .ibd文件從ibdata1獨立出來,分散寫入改善整體效能
innodb_buffer_pool_size = 3G
*最重要影響資料庫讀取效能沒有之一
innodb引擎的快取層吃多少記憶體的設定,通常試情況設定為實體80%左右佔成
留言
張貼留言