標籤:my.cnf
[mysqld]
datadir=/var/lib/mysql 資料庫所在的路徑
socket=/var/lib/mysql/mysql.sock 通訊端路徑
old_passwords=1 相容4.1版本之前的hash密碼
max_connections = 1000 最大串連數目
max_connect_errors=500000000 最大錯誤串連數,防止錯誤串連等待過多導致效能下降
max_allowed_packet=61457280 發送最大包的值
max_length_for_sort_data=8096 設定一個觸發使用雙路排序的值,不足這個值的 ord by 排序使用單路排序
delayed_insert_timeout=300 設定延遲插入的逾時時間,若在指定的時間內沒有插入,則終止插入
table_cache=356 限制緩衝表的最大數目,show global status like ‘open%_tables‘;
sort_buffer_size=50M 排序緩衝大小設定,當處於高並發的時候不建議設定的太大
key_buffer_size=264M 索引區塊的RMA值,為更好的處理索引
read_buffer_size=50M 隨機讀查詢的緩衝區大小,也就是查詢時候的緩衝區大小
join_buffer_size=50M 在進行 join 操作時,最大緩衝塊長度
tmp_table_size=100M 暫存資料表的大小
max_heap_table_size=100M 記憶體表最大的大小,記憶體表會把表結構存放在磁碟上,把資料放在記憶體中。因此,重啟資料庫後在內存中的資料內容沒有了,但是表結構還是在的。暫存資料表和記憶體表的 engine 是不同的,暫存資料表的 MyISAM ,而記憶體表是 MEMORY 。記憶體表的效率比暫存資料表高一些
myisam_sort_buffer_size=50M 重建索引時,允許最大臨時檔案的大小
query_cache_size=64M 設定查詢緩衝的大小,show variables like ‘have_query_cache‘;show variables like ‘query_cache_size‘;
query_cache_type = 1
查詢結果寫入緩衝。這裡可以設定三種值 0 , 1,2 ,其中 0 表示關閉緩衝,也就是查詢結構不寫入緩衝, 1 是寫入, 2 是 demand 。但是事實證明,只要不關閉,查詢就會先去緩衝中找。
skip-name-resolve 禁用網域名稱解析
ft_min_word_len = 1開啟全文檢索搜尋,預先對於全站內容進行索引
character-set-server=utf8 設定使用的字元編碼服務
log-bin=mysql-binf 設定二進位日誌的開頭名
expire-logs-days=3 設定日誌到期時間
binlog_format = statement 設定 binlog_format 的模式, statement 表示記錄每一個 sql 修改。若設定為 =row ,則表示記錄修改的行,另外還可以設定為 mixedlevel ,為兩者混合模式,在執行主從複製時使用 row 進行主從複製,在進行資料普通修改的時候進行 statement 複製。
server-id=1
#query
long_query_time=30 判斷為慢查詢的時間
slow_query_log_file=/var/log/mysql_slow.log 設定慢查詢的記錄檔
slow-query-log=on 開啟慢查詢
slow_query_log_timestamp_precision = microsecond 為判定為慢查詢的語句打上時間戳記
log-slow-queries = /var/log/mysql_slow.log 慢查詢語句判定之後存放的位置
default-storage-engine = myisam 預設儲存引擎設定
log_error = /var/log/mysqld.log 存放錯誤記錄檔的位置
slave_load_tmpdir = /data/mysql_tmp_no_del 從伺服器引導臨時檔案
tmpdir = /backup/mysql_tmp_no_del 臨時檔案目錄
[mysqld_safe]
pid-file=/var/lib/mysql/mysqld.pid 指定存放 PID 的檔案
本文出自 “12208412” 部落格,請務必保留此出處http://12218412.blog.51cto.com/12208412/1888940
mysql設定檔詳解