`
hpgary
  • 浏览: 82017 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Mysql 配置优化

 
阅读更多

一、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配置优化基本信息

    MySQL配置优化是提升数据库性能的关键步骤,特别是在面对CPU和I/O瓶颈时。CPU瓶颈往往出现在数据加载到内存或从磁盘读取时,而当数据量超过内存容量,磁盘I/O成为主要瓶颈。此外,如果数据库应用在网络环境中,网络...

    mysql最经典优化配置

    在进行MySQL配置优化时,必须考虑到服务器的硬件能力和预期的工作负载。不同的参数设置会直接影响到查询性能、内存使用和并发处理能力。因此,优化过程不仅需要理论知识,还需要实践经验,通过监控和调整找到最佳的...

    windows平台mysql优化配置

    #### 一、MySQL配置文件简介 MySQL在Windows平台上的主要配置文件为`my.ini`,通常位于`C:\ProgramData\MySQL\MySQL Server 5.7\`目录下。通过编辑此文件中的参数,可以实现对MySQL服务器的各种定制化设置。 #### ...

    mysql配置和优化

    ### MySQL配置和优化详解 #### 一、MySQL配置文件概览 MySQL的配置文件对于确保数据库服务器高效稳定地运行至关重要。通常情况下,MySQL会提供多种预设的配置文件以适应不同规模的应用场景,例如从小型数据库到...

    MySQL 配置优化(多个参数)

    为了更有效地优化MySQL配置,需要定期监控系统性能,分析慢查询日志,找出性能瓶颈,然后针对性地调整这些参数。同时,也要注意硬件资源的限制,避免过度配置导致浪费。总的来说,MySQL的配置优化是一门细致且需要...

    【荐】mysql服务性能优化—my.cnf_my.ini配置说明详解(16G内存)

    ### MySQL服务性能优化——my.cnf/my.ini配置详解 #### 背景介绍 本文档旨在详细介绍一套已在生产环境中经过验证、适用于16GB内存环境下的MySQL服务性能优化方案。通过对my.cnf/my.ini配置文件的各项关键参数进行...

    MySQL架构执行与SQL性能优化 MySQL高并发详解 MySQL数据库优化训练营四期课程

    课程内容进行了精华的浓缩,有四大内容主旨,MySQL架构与执行流程,MySQL索引原理详解,MySQL事务原理与事务并发,MySQL性能优化总结与MySQL配置优化。课程安排的学习的教程与对应的学习课件,详细的学习笔以及课程...

    mysql配置优化 my.cnf

    linux下 mysql5.6版优化配置文件,适用于8G内存服务器,其他内存的可根据配置适当调整。linux下 mysql5.6版优化配置文件,适用于8G内存服务器,其他内存的可根据配置适当调整

    mysql优化配置大全

    mysql慢可能是配置不对,阅读一下这个可能对你有帮助 在Apache, PHP, mysql的体系架构中,MySQL对于性能的影响最大,也是关键的核心部分。对于Discuz!论坛程序也是如此,MySQL的设置是否合理优化,直接 影响到论坛的...

    Mysql数据库优化笔记(细节决定成败)

    对mysql优化时一个综合性的技术,主要包括 a: 表的设计合理化(符合3NF) ...f: 对mysql配置优化 [配置最大并发数my.ini, 调整缓存大小 ] g: mysql服务器硬件升级 h: 定时的去清除不需要的数据,定时进行碎片整理(MyISAM)

    MySQL性能优化之参数配置.docx

    MySQL 性能优化之参数配置 MySQL 性能优化是一种重要的数据库优化技术,通过合理地配置 MySQL 参数,可以最大程度地提高 MySQL 的性能。本文将介绍如何通过修改 MySQL 参数来提高 MySQL 的性能。 修改 back_log ...

    大牛-高级教程MySQL性能优化实战.zip

    MySQL配置优化不仅限于全局设置,还包括对特定表的优化。例如,通过ALTER TABLE语句添加或删除索引,改变数据类型以节省空间,或者启用或禁用分区,以适应不同查询模式。此外,合理使用存储过程和触发器,也能提升...

    千金良方:MySQL性能优化金字塔法则.docx

    MySQL性能优化是指通过调整MySQL数据库的配置、优化数据库结构和查询语句等方式,提高MySQL数据库的性能和响应速度,以满足应用程序的需求。MySQL作为最流行的开源数据库之一,被广泛应用于各种规模的企业和应用程序...

    mysql性能优化.pptx

    - **MySQL配置文件优化**:修改`my.cnf`文件,优化如`innodb_buffer_pool_size`、`query_cache_size`等关键设置。 - **第三方配置工具**:利用如MySQLTuner、pt-query-digest等工具进行自动化调优。 6. **服务器...

    mysql笔记,mysql优化图解

    f: 对mysql配置优化 [配置最大并发数my.ini, 调整缓存大小 ] g: mysql服务器硬件升级 h: 定时的去清除不需要的数据,定时进行碎片整理(MyISAM) 什么样的表才是符合3NF (范式) 表的范式,是首先符合1NF, 才能满足...

Global site tag (gtag.js) - Google Analytics