1. 存储引擎设置
default_storage_engine = InnoDB
2. 单独表空间模式
innodb_file_per_table = ON
3. 共享表空间文件个数和大小
innodb_data_file_path = ibdata1:256M:ibdata2:256M:autoextend
4. 事务提交时刷新数据到磁盘
innodb_flush_log_at_trx_commit = 1
当值是0时 ---> 每秒刷新redolog到ib_logfile0,ib_logfile1文件然后到磁盘,实现持久性(D)
当值是1时 ---> 当事务提交的时候刷新redolog到ib_logfile0,ib_logfile1文件然后到磁盘,实现持久性(D)
当值是1时 ---> 当事务提交的时候刷新redolog到ib_logfile0,ib_logfile1文件然后每秒刷新到磁盘,实现持久性(D)
5. innodb刷新数据到磁盘模式
innodb_flush_method = fsync
fsync: buffer_pool数据和redo_buffer数据都是先写到os_buffer,然后再刷新到磁盘
o_direct: redo_buffer数据是先写到os_buffer,然后再刷新到磁盘。buffer_pool直接写到磁盘(建议使用)
o_dsync: redo_buffer直接写到磁盘。buffer_pool数据是先写到os_buffer,然后再刷新到磁盘
6. redo日志设置有关的
innodb_log_buffer_size = 16777216 # redo_buffer的大小
innodb_log_file_size = 50331648 # ib_logfile的大小
innodb_log_files_in_group = 2 # ib_logfile文件的个数
7. 脏页刷写策略
innodb_max_dirty_pages_pct = 75.000000 # 当内存中的脏页达到内存的75%时刷新到磁盘
当redo满了的时候脏数据不管到没到75%页会刷新到磁盘
最高安全模式
innodb_flush_log_at_trx_commit = 1
innodb_flush_method = o_direct
最高性能模式
innodb_flush_log_at_trx_commit = 0
innodb_flush_method = fsync
Mysql5.7的核心参数
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 1. 问题背景 生产环境Percona MySQL 5.7.19 执行SQL报错 如下: 2. 排查问题 通过网络...