(mysql優化-3) 系統優化

wuaiqiu發表於2018-04-19

1.作業系統優化

#網路方面的配置,修改/etc/sysctl.conf

增加tcp連線的佇列數
net.ipv4.tcp_max_syn_backlog=65535
減少time_wait的數量
net.ipv4.tcp_max_tw_buckets=8000
開啟TCP連線複用功能,允許將time_wait sockets重新用於新的TCP連線
net.ipv4.tcp_tw_reuse=1
開啟TCP連線中time_wait sockets的快速回收
net.ipv4.tcp_tw_recycle=1
保持在FIN-WAIT-2狀態的時間
net.ipv4t.tcp_fin_timeout=10
#開啟檔案數的限制,修改/etc/security/limits.conf

*soft nofile 65535
*hard nofile 65535

2.mysql配置檔案(/etc/mysql/my.cnf )

#緩衝池的大小(預設為16M,設定主存的50%~80%)
innodb_buffer_pool_size=16M
#日誌緩衝池大小(預設為8M,由於日誌每秒就會重新整理所以一般不用太大)
innodb_log_buffer_size=8M
#對innodb的IO效率控制(0:每秒重新整理磁碟;1:預設,每次提交都重新整理磁碟,安全性高;2:每次提交重新整理緩衝區,每一秒重新整理磁碟)
innodb_flush_log_at_trx_commit=1
#IO讀寫執行緒數(預設為4)
innodb_read_io_threads=4
innodb_write_io_threads=4
#ON:控制innodb每個表使用獨立空間,OFF:預設,所有表都會建立在共享表空間中
innodb_file_per_table=OFF
#決定mysql在什麼情況下會重新整理innodb表的統計資訊(預設ON)
innodb_stats_on_metadata=ON

第三方配置自動生成:https://tools.percona.com/wizard

相關文章