时间:2021-07-01 10:21:17 帮助过:25人阅读
mysql参数优化
### 用来存放InnoDB的内部目录,对于大数据设置16M足够用
innodb_additional_mem_pool_size = 16M
### InnoDB 缓存总大小设置,一般设置为系统内存的70%-80%
innodb_buffer_pool_size = 12G
### 指定所有InnoDB数据文件的路径和大小分配
innodb_data_file_path = ibdata1:18M;ibdata2:1000M:autoextend
### 文件读写io数设置:
innodb_file_io_threads = 4
### InnoDB内核的并发线程数设置
innodb_thread_concurrency = 16
### 设置日值的大小
innodb_log_file_size = 256M
### 设置日值组个数
innodb_log_files_in_group = 3
### 事物在内存中的缓存大小
innodb_log_buffer_size = 8M
### 控制事物的提交方式,设置为2性能上最快
innodb_flush_logs_at_trx_commit = 2
### InnoDB直接写入磁盘设置,避免重复缓冲和减少linux交换分区的压力
innodb_flush_method = O_DIRECT
### 控制InnoDB的脏页在缓冲中的百分之比之下
innodb_max_dirty_pages_pct = 90
### 设置允许其他事务修改最终受事务回滚的数据之前要等待多少秒
innodb_lock_wait_timeout = 120
### 建议根据物理内存设置规则如下:1G => 8,2G => 16,3G => 32,大于3G => 64
thread_cache_size=64
### 查询结果缓存
query_cache_size=256M
### 单个查询能够使用的缓冲区大小,缺省为1M
query_cache_limit = 2M
### 根据比例key_reads / key_read_requests应该尽可能的低,至少是1:100,1:1000更好
key_buffer_size=128M
### MySql读入缓冲区大小,如果对表的顺序扫描请求非常频繁,可以通过增加该变量值以及内存缓冲区大小提高其性能
read_buffer_size = 4M
### MySql的随机读(查询操作)缓冲区大小
read_rnd_buffer_size = 16M
### 二进制日志自动删除的天数
expire_logs_days=10
### Cpu核心数的2倍
thread_concurrency = 8
### 日志格式,设置为混合模式
binlog_format = MIXED
bitsCN.com