一、Innodb 配置优化
线程参数配置:
sort_buffer_size (排序缓冲区), join_buffer_size(join缓冲大小),read_buffer_size(读取缓冲区大小),read_rnd_buffer_size(索引缓冲区大小)
mysql innodb系统参数配置:
innodb_buffer_pool_size=1024M #innodb 缓存池大小,设置innodb使用缓存的大小 设置内存的80%左右 一般设置和数据量大小一直 (总内存-每个线程所需要的内存*连接数-系统保留的内存)
innodb_log_file_size 控制单个事务日志文件的大小
innodb_log_files_in_group 控制事务日志文件的个数
innodb_log_buffer_size 日志缓冲区大小 32M 64M
innodb_flush_log_at_trx_commit=2 #设置为 0 每秒log buffer的内容写入日志,并且刷新到磁盘 设置为1 每个事务提交后,将log buffer的内容写事务日志并且写入磁盘,设置2每个事务提交,将log buffer 内容写入事务日志,但不写入磁盘,机械硬盘设置为2,固态硬盘设置为1
innodb_flush_method=O_DIRECT 通知操作系统不要缓存数据,数据直接写入到磁盘。
innodb_file_per_table=1 打开独立表空间
innodb_doublewrite=1 开启双写缓存,防止数据丢失
expire_logs_days=0 binlog日志保存的天数
max_allowed_packet=1073741824 mysql最大接收的包的大小
read_only=1 禁止任何没有super权限的账号修改权限,一般在从库中启用该选项
sql_mode 可指定sql的标准规范可选值:
STRICT_TRANS_TABLES 如果给定的数据不能插入到事务中会中断sql中 NO_ENGINE_SUBSTITUTION 如果在create table中指定的存储引擎不可用的情况下,让表创建失败,不是默认的存储引擎创建表 only_full_group_by 要求查询中group by没有group by的字段不能进行查询 no_zreo_date 表是日期中不允许存储 0000-00-00 这样的值
sync_binlog 控制mysql如何向磁盘刷新binlog 默认0由系统决定什么时候刷新binlog,设置为1,每次事务执行完成后刷新binlog 影响性能,但是数据安全
tmp_table_size 和 max_heap_table_size 控制内存临时表大小,两个参数值应该保持一致,并且不要设置太大,防止内存溢出
max_connections mysql最大的链接数,默认100,通常会修改为2000或者更大
二、数据库设计对性能的影响:
1、过分的反范式化建立太多的列
2、过分的范式化造成太多的表关联
3、在交易系统中中使用不合适的分区表
4、使用外键保证数据的完整性
性能优化顺序:
1、数据库设计和sql语句
2、数据库存储引擎和参数的配置
3、系统选择及优化
4、硬件升级
相关推荐
MySQL配置优化是提升数据库性能的关键步骤,特别是在面对CPU和I/O瓶颈时。CPU瓶颈往往出现在数据加载到内存或从磁盘读取时,而当数据量超过内存容量,磁盘I/O成为主要瓶颈。此外,如果数据库应用在网络环境中,网络...
在进行MySQL配置优化时,必须考虑到服务器的硬件能力和预期的工作负载。不同的参数设置会直接影响到查询性能、内存使用和并发处理能力。因此,优化过程不仅需要理论知识,还需要实践经验,通过监控和调整找到最佳的...
#### 一、MySQL配置文件简介 MySQL在Windows平台上的主要配置文件为`my.ini`,通常位于`C:\ProgramData\MySQL\MySQL Server 5.7\`目录下。通过编辑此文件中的参数,可以实现对MySQL服务器的各种定制化设置。 #### ...
### MySQL配置和优化详解 #### 一、MySQL配置文件概览 MySQL的配置文件对于确保数据库服务器高效稳定地运行至关重要。通常情况下,MySQL会提供多种预设的配置文件以适应不同规模的应用场景,例如从小型数据库到...
为了更有效地优化MySQL配置,需要定期监控系统性能,分析慢查询日志,找出性能瓶颈,然后针对性地调整这些参数。同时,也要注意硬件资源的限制,避免过度配置导致浪费。总的来说,MySQL的配置优化是一门细致且需要...
### MySQL服务性能优化——my.cnf/my.ini配置详解 #### 背景介绍 本文档旨在详细介绍一套已在生产环境中经过验证、适用于16GB内存环境下的MySQL服务性能优化方案。通过对my.cnf/my.ini配置文件的各项关键参数进行...
课程内容进行了精华的浓缩,有四大内容主旨,MySQL架构与执行流程,MySQL索引原理详解,MySQL事务原理与事务并发,MySQL性能优化总结与MySQL配置优化。课程安排的学习的教程与对应的学习课件,详细的学习笔以及课程...
linux下 mysql5.6版优化配置文件,适用于8G内存服务器,其他内存的可根据配置适当调整。linux下 mysql5.6版优化配置文件,适用于8G内存服务器,其他内存的可根据配置适当调整
mysql慢可能是配置不对,阅读一下这个可能对你有帮助 在Apache, PHP, mysql的体系架构中,MySQL对于性能的影响最大,也是关键的核心部分。对于Discuz!论坛程序也是如此,MySQL的设置是否合理优化,直接 影响到论坛的...
对mysql优化时一个综合性的技术,主要包括 a: 表的设计合理化(符合3NF) ...f: 对mysql配置优化 [配置最大并发数my.ini, 调整缓存大小 ] g: mysql服务器硬件升级 h: 定时的去清除不需要的数据,定时进行碎片整理(MyISAM)
MySQL 性能优化之参数配置 MySQL 性能优化是一种重要的数据库优化技术,通过合理地配置 MySQL 参数,可以最大程度地提高 MySQL 的性能。本文将介绍如何通过修改 MySQL 参数来提高 MySQL 的性能。 修改 back_log ...
MySQL配置优化不仅限于全局设置,还包括对特定表的优化。例如,通过ALTER TABLE语句添加或删除索引,改变数据类型以节省空间,或者启用或禁用分区,以适应不同查询模式。此外,合理使用存储过程和触发器,也能提升...
MySQL性能优化是指通过调整MySQL数据库的配置、优化数据库结构和查询语句等方式,提高MySQL数据库的性能和响应速度,以满足应用程序的需求。MySQL作为最流行的开源数据库之一,被广泛应用于各种规模的企业和应用程序...
- **MySQL配置文件优化**:修改`my.cnf`文件,优化如`innodb_buffer_pool_size`、`query_cache_size`等关键设置。 - **第三方配置工具**:利用如MySQLTuner、pt-query-digest等工具进行自动化调优。 6. **服务器...
f: 对mysql配置优化 [配置最大并发数my.ini, 调整缓存大小 ] g: mysql服务器硬件升级 h: 定时的去清除不需要的数据,定时进行碎片整理(MyISAM) 什么样的表才是符合3NF (范式) 表的范式,是首先符合1NF, 才能满足...