1. 首页
  2. 技术知识

MySQL数据库配置优化的方案

数据库的操作越来越成为整个应用的性能瓶颈,这对于Web应用尤其明显。关于数据库的性能,这并不只是DBA需要关心的,而更是后端开发需要去关注的事情。

所以本文讲解MySQL在各个方面的优化方向,方便后端开发人员在调优和问题排查过程中找到切入点。


1.服务器硬件的优化

提升硬件设备,例如选择尽量高频率的内存(频率不能高于主板的支持)、提升网络带宽、使用SSD高速磁盘、提升CPU性能等。

CPU的选择:

对于数据库并发比较高的场景,CPU的数量比频率重要。

对于CPU密集型场景和频繁执行复杂SQL的场景,CPU的频率越高越好。


2.MySQL数据库配置优化

  1. 表示缓冲池字节大小。
  2. 推荐值为物理内存的50%~80%。
  3. innodb_buffer_pool_size
  4. 用来控制redo log刷新到磁盘的策略。
  5. innodb_flush_log_at_trx_commit=1
  6. 每提交1次事务同步写到磁盘中,可以设置为n。
  7. sync_binlog=1
  8. 脏页占innodb_buffer_pool_size的比例时,触发刷脏页到磁盘。 推荐值为25%~50%。
  9. innodb_max_dirty_pages_pct=30
  10. 后台进程最大IO性能指标。
  11. 默认200,如果SSD,调整为5000~20000
  12. innodb_io_capacity=200
  13. 指定innodb共享表空间文件的大小。
  14. innodb_data_file_path
  15. 慢查询日志的阈值设置,单位秒。
  16. long_qurey_time=0.3
  17. mysql复制的形式,row为MySQL8.0的默认形式。
  18. binlog_format=row
  19. 调高该参数则应降低interactive_timeout、wait_timeout的值。
  20. max_connections=200
  21. 过大,实例恢复时间长;过小,造成日志切换频繁。
  22. innodb_log_file_size
  23. 全量日志建议关闭。
  24. 默认关闭。
  25. general_log=0

复制代码 到此这篇关于MySQL数据库配置优化的方案的文章就介绍到这了,更多相关MySQL性能调优内容请搜索软件技术网以前的文章或继续浏览下面的相关文章希望大家以后多多支持软件技术网!

原创文章,作者:starterknow,如若转载,请注明出处:https://www.starterknow.com/118652.html

联系我们