my-innodb-heavy-4G.cnf 配置文件

[client]                           ####客戶端配置
port= 3306                 ####mysql連接時默認的端口號               
socket= /tmp/mysql.sock      ####用於連接mysql
[mysqld]                           ####服務端配置
port= 3306                 ####mysql服務默認監聽的端口
socket= /tmp/mysql.sock      ####用於連接mysql
back_log = 50                      ####操作系統在監聽隊列中所能保持的連接數,即在mysql連接管理器線程處理他們之前的連接數量
max_connections = 100              ####MySQL允許的併發會話的最大數量
max_connect_errors = 10            ####每個主機運行的最大錯誤量
table_open_cache = 2048            ####所有線程打開表的數字,文件描述符的大小
max_allowed_packet = 16M           ####服務器一次能夠處理的最大查詢包的值,也是服務器能夠處理的最大查詢
binlog_cache_size = 1M             ####在一個事務中,二進制日誌能夠處理SQL語句的緩存的最大值,若經常使用複雜的事務,可以增大這個值以便獲得更好的性能,事務中所有的語句都會被緩存到binlog中,並且一次性的提交後立即寫入二進制日誌中,若處理的事務大於這個值,磁盤上的臨時文件被代替使用,這個緩衝會在事務中第一次有更改狀態時,被分配到每個連接上
max_heap_table_size = 64M          ####獨立內存表所允許的最大容量
read_buffer_size = 2M              ####MySQL讀入緩衝區的大小
read_rnd_buffer_size = 16M         ####MySQL隨機讀緩衝區的大小
sort_buffer_size = 8M              ####排序緩衝被用來處理類似ORDER BY以及GROUP BY隊列所引起的排序
join_buffer_size = 8M              ####聯合查詢所能使用的緩衝區大小,該參數對應分配的內存是每個連接獨享
thread_cache_size = 8              ####在cache保留多少線程用於重用
thread_concurrency = 8             ####允許應用程序給予線程系統一個提示在同一時間給予渴望被運行的線程數量
query_cache_size = 64M             ####查詢緩衝區的大小,查詢緩衝區常用來緩衝SELECT的結果並且在下一次同樣查詢的時候不在執行直接返回結果
query_cache_limit = 2M             ####只有小於此設定值的結果纔會被緩衝
ft_min_word_len = 4                ####被全文檢索索引最小的字長
default-storage-engine = MYISAM    ####創建新表時默認使用的表類型
thread_stack = 192K                ####線程使用的堆大小,此容量的內存在每次連接時被預留
transaction_isolation = REPEATABLE-READ    ####數據庫的隔離級別
tmp_table_size = 64M               ####內部(內存中)臨時表的最大大小
log-bin=mysql-bin                  ####打開二進制的日誌功能
binlog_format=mixed                ####設定記錄二進制日誌的格式,有3種格式,基於語句statement、基於行row、混合模式mixed
slow_query_log                     ####記錄慢查詢
long_query_time = 2                ####所有超過這個參數的請求都將被作爲慢查詢
server-id = 1                      ####唯一的服務標識號,取值在2^32-1之間,這個值在主服務器和從服務器是被要求設置的,默認參數是1,如果主機不需要設置,且忽略此選項,MySQL不會作爲master生效
key_buffer_size = 32M              ####關鍵詞的緩衝大小,一般用來緩衝MyISAM表的索引塊
bulk_insert_buffer_size = 64M      ####MyISAM使用特殊的類似樹的cache來使得突發插入更快,此變量限制每個進程中緩衝樹的字節
myisam_sort_buffer_size = 128M     ####當需要對於執行PERAIR、OPTIMIZE、ALTER語句重建索引時,MySQL會分配這個緩存,以及LOAD DATA INFILE會加載到一個新表,他會根據最大的配置認真的分配每個線程
myisam_max_sort_file_size = 10G    ####當重建索引PERAIR、OPTIMIZE、ALTER、LOAD、DATA、INFILE時,MySQL被允許使用臨時文件的最大值
myisam_repair_threads = 1          ####如果一個表用友超過一個索引,MyISAM可以通過並行排序使用超過一個線程去修復他們
myisam_recover                     ####自動檢查和修復沒有適當關閉的MyISAM表
innodb_additional_mem_pool_size = 16M   ####用來設置InnoDB存儲的數據目錄信息和其他內部數據結構的內存池大小,應用程序裏的表越多,你需要在這裏分配越多的內存
innodb_buffer_pool_size = 2G       ####InnoDB使用一個緩衝池來保存索引和原始數據,設置越大,在存取裏面數據時需要的磁盤I/O越少
innodb_data_file_path = ibdata1:10M:autoextend    ####InnoDB將數據保存在一個或多個數據文件中成爲表空間
innodb_write_io_threads = 8        ####用來同步IO操作的IO線程數量
innodb_read_io_threads = 8         ####用來同步IO操作的IO線程數量
innodb_thread_concurrency = 16     ####使用InnoDB引擎,內核被允許的線程數,這個最佳值取決於應用程序、硬件還有操作系統的調用程序,太高的值肯定會導致線程的抖動
innodb_flush_log_at_trx_commit = 1 ####如果設置爲1,InnoDB會在每次提交後刷新(fsync)事務日誌到磁盤上
innodb_log_buffer_size = 8M        ####用來緩衝日誌數據的緩衝大小
innodb_log_file_size = 256M        ####日誌組中每個日誌文件的大小
innodb_log_files_in_group = 3      ####日誌文件的總量 一般2-3個足夠
innodb_max_dirty_pages_pct = 90    ####在InnoDB緩衝池中最大允許的髒頁面的比例
innodb_lock_wait_timeout = 120     ####在被回滾前,一個InnoDB的事務應該等待一個鎖被批准多久
[mysqldump] 
quick
max_allowed_packet = 16M
[mysql]
no-auto-rehash
[myisamchk]
key_buffer_size = 512M
sort_buffer_size = 512M
read_buffer = 8M
write_buffer = 8M
[mysqlhotcopy]
interactive-timeout
[mysqld_safe]
open-files-limit = 8192           ####每個程序允許打開文件的數量


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章