`
zhanshenny
  • 浏览: 264910 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

innodb调优参数设置

阅读更多

1. innodb_additional_mem_pool_size
除了缓存表数据和索引外,可以为操作所需的其他内部项分配缓存来提升InnoDB的性能。这些内存就可以通过此参数来分配。推荐此参数至少设置为2MB,实际上,是需要根据项目的InnoDB表的数目相应地增加

2.innodb_data_pool_size
此参数类似于MySQL的key_buffer参数,但特定用于InnoDB表.这个参数确定了要预留多少内存来缓存表数据和索引。与key_buffer一样,更高的设置会提升性能,可以是服务器的内存70-80%

3.innodb_data_file_path
参数的名字和实际的用途有点出入,它不仅指定了所有InnoDB数据文件的路径,还指定了初始大小分配,最大分配以及超出起始分配界线时是否应当增加文件的大小。此参数的一般格式如下:
path-to-datafile:size-allocation[:autoextend[:max-size-allocation]]

例如,假设希望创建一个数据文件sales,初始大小为100MB,并希望在每次达到当前大小限制时,自动增加8MB(8MB是指定autoextend时的默认扩展大小).但是,不希望此文件超过1GB,可以使用如下配置:
innodb_data_home_dir =
innodb_data_file_path = /data/sales:100M:autoextend:8M: max:1GB
如果此文件增加到预定的1G的限制,可以再增加另外一个数据文件,如下:
innodb_data_file_path = /data/sales:100M:autoextend:8M: max:1GB;innodb_data_file_path = /data2/sales2:100M:autoextend:8M: max:2GB

要注意的是,在这些示例中,inndb_data_home_dir参数开始设置为空,因为最终数据文件位于单独的位置(/data/和/data2/).如果希望所有 InnoDB数据文件都位于相同的位置,就可以使用innodb_data_home_dir来指定共同位置,然后在通过 inndo_data_file_path来指定文件名即可。如果没有定义这些值,将在datadir中创建一个sales。

4 innodb_data_home_dir
此参数指定创建InnoDB表空间的路径的公共部分,默认情况下,这是MySQL的默认数据,由MySQL参数datadir指定
5. innodb_file_io_threads
此参数指定InnoDB表可用的文件I/O线程数,MySQL开发人员建议在非Windows平台中这个参数设置为4
6. innodb_flush_log_at_trx_commit
如果将此参数设置为1,将在每次提交事务后将日志写入磁盘。为提供性能,可以设置为0或2,但要承担在发生故障时丢失数据的风险。设置为0表示事务日志写入日志文件,而日志文件每秒刷新到磁盘一次。设置为2表示事务日志将在提交时写入日志,但日志文件每次刷新到磁盘一次。
7.innodb_log_archive
因为MySQL目前使用自己的日志文件恢复InnoDB表,此参数可设置为0
8.innodb_log_arch_dir
MySQL目前忽略此参数,但会在未来的版本中使用。目前,应当将其设置为与innodb_log_group_home_dir相同的值
9.innodb_log_buffer_size
此参数确定些日志文件所用的内存大小,以M为单位。缓冲区更大能提高性能,但意外的故障将会丢失数据.MySQL开发人员建议设置为1-8M之间
10. innodb_log_file_size
此参数确定数据日志文件的大小,以M为单位,更大的设置可以提高性能,但也会增加恢复故障数据库所需的时间
11.innodb_log_files_in_group
为提高性能,MySQL可以以循环方式将日志文件写到多个文件。推荐设置为3M
12. innodb_log_group_home_dir
此参数确定日志文件组中的文件的位置,日志组中文件的个数由innodb_log_files_in_group确定,此位置设置默认为MySQL的datadir
13.innodb_lock_wait_timeout
InnoDB 有其内置的死锁检测机制,能导致未完成的事务回滚。但是,如果结合InnoDB使用MyISAM的lock tables 语句或第三方事务引擎,则InnoDB无法识别死锁。为消除这种可能性,可以将innodb_lock_wait_timeout设置为一个整数值,指示 MySQL在允许其他事务修改那些最终受事务回滚的数据之前要等待多长时间(秒数)
14.skip-innodb
启用此参数能防止夹杂InnoDB表驱动程序,不使用InnoDB表时推荐此设置

1. innodb_additional_mem_pool_size
除了缓存表数据和索引外,可以为操作所需的其他内部项分配缓存来提升InnoDB的性能。这些内存就可以通过此参数来分配。推荐此参数至少设置为2MB,实际上,是需要根据项目的InnoDB表的数目相应地增加

2.innodb_data_pool_size
此参数类似于MySQL的key_buffer参数,但特定用于InnoDB表.这个参数确定了要预留多少内存来缓存表数据和索引。与key_buffer一样,更高的设置会提升性能,可以是服务器的内存70-80%

3.innodb_data_file_path
参数的名字和实际的用途有点出入,它不仅指定了所有InnoDB数据文件的路径,还指定了初始大小分配,最大分配以及超出起始分配界线时是否应当增加文件的大小。此参数的一般格式如下:
path-to-datafile:size-allocation[:autoextend[:max-size-allocation]]

例如,假设希望创建一个数据文件sales,初始大小为100MB,并希望在每次达到当前大小限制时,自动增加8MB(8MB是指定autoextend时的默认扩展大小).但是,不希望此文件超过1GB,可以使用如下配置:
innodb_data_home_dir =
innodb_data_file_path = /data/sales:100M:autoextend:8M: max:1GB
如果此文件增加到预定的1G的限制,可以再增加另外一个数据文件,如下:
innodb_data_file_path = /data/sales:100M:autoextend:8M: max:1GB;innodb_data_file_path = /data2/sales2:100M:autoextend:8M: max:2GB

要注意的是,在这些示例中,inndb_data_home_dir参数开始设置为空,因为最终数据文件位于单独的位置(/data/和/data2/).如果希望所有 InnoDB数据文件都位于相同的位置,就可以使用innodb_data_home_dir来指定共同位置,然后在通过 inndo_data_file_path来指定文件名即可。如果没有定义这些值,将在datadir中创建一个sales。

4 innodb_data_home_dir
此参数指定创建InnoDB表空间的路径的公共部分,默认情况下,这是MySQL的默认数据,由MySQL参数datadir指定
5. innodb_file_io_threads
此参数指定InnoDB表可用的文件I/O线程数,MySQL开发人员建议在非Windows平台中这个参数设置为4
6. innodb_flush_log_at_trx_commit
如果将此参数设置为1,将在每次提交事务后将日志写入磁盘。为提供性能,可以设置为0或2,但要承担在发生故障时丢失数据的风险。设置为0表示事务日志写入日志文件,而日志文件每秒刷新到磁盘一次。设置为2表示事务日志将在提交时写入日志,但日志文件每次刷新到磁盘一次。
7.innodb_log_archive
因为MySQL目前使用自己的日志文件恢复InnoDB表,此参数可设置为0
8.innodb_log_arch_dir
MySQL目前忽略此参数,但会在未来的版本中使用。目前,应当将其设置为与innodb_log_group_home_dir相同的值
9.innodb_log_buffer_size
此参数确定些日志文件所用的内存大小,以M为单位。缓冲区更大能提高性能,但意外的故障将会丢失数据.MySQL开发人员建议设置为1-8M之间
10. innodb_log_file_size
此参数确定数据日志文件的大小,以M为单位,更大的设置可以提高性能,但也会增加恢复故障数据库所需的时间
11.innodb_log_files_in_group
为提高性能,MySQL可以以循环方式将日志文件写到多个文件。推荐设置为3M
12. innodb_log_group_home_dir
此参数确定日志文件组中的文件的位置,日志组中文件的个数由innodb_log_files_in_group确定,此位置设置默认为MySQL的datadir
13.innodb_lock_wait_timeout
InnoDB 有其内置的死锁检测机制,能导致未完成的事务回滚。但是,如果结合InnoDB使用MyISAM的lock tables 语句或第三方事务引擎,则InnoDB无法识别死锁。为消除这种可能性,可以将innodb_lock_wait_timeout设置为一个整数值,指示 MySQL在允许其他事务修改那些最终受事务回滚的数据之前要等待多长时间(秒数)

14.skip-innodb
启用此参数能防止夹杂InnoDB表驱动程序,不使用InnoDB表时推荐此设置

 

 

分享到:
评论

相关推荐

    mysql性能调优参数

    本文将总结 MySQL 性能调优参数,涵盖 Innodb 相关参数、连接参数、缓存参数、日志参数等多方面,帮助读者快速了解和掌握 MySQL 性能调优的方法。 Innodb 相关参数 1. Innodb_open_files:这个参数限制 Innodb 能...

    MySql Innodb 引擎特性详解

    4. **高效缓存**:InnoDB支持数据和索引的缓存,通过调整配置文件中的`innodb_buffer_pool_size`参数可以显著提高缓存性能,减少磁盘I/O操作。 5. **支持分区和表空间**:InnoDB引擎支持数据分区和表空间管理,...

    可以改善mysql性能的InnoDB配置参数

    MySQL的InnoDB存储引擎是许多大型企业级应用的首选,因为它提供了事务处理...此外,还有一些其他参数如`innodb_buffer_pool_instances`、`innodb_max_dirty_pages_pct`等,也是性能调优的重要组成部分,需要综合考虑。

    innodb插件mysql

    3. **监控与调优**:安装后,应定期监控InnoDB Plugin的运行状态,根据实际负载进行参数调优,以获得最佳性能。 四、InnoDB Plugin的高级特性 1. **多线程插入**:支持并行插入,提高插入大量数据时的性能。 2. *...

    Mysql一些调优资料收集

    其次,调整服务器设置涉及到各种参数,如innodb_buffer_pool_size用于InnoDB存储引擎的数据和索引缓存,thread_cache_size管理线程创建,以及max_connections控制最大并发连接数。这些参数应根据实际负载情况进行...

    SQL调优与案例

    - **选择合适的存储引擎**:InnoDB适合事务处理,MyISAM适合读密集型应用。 - **数据类型选择**:使用最小的数据类型来存储数据,减少存储空间,提高查询速度。 - **分区和分表**:对于大型表,可以考虑分区或...

    中间件参数调优手册大全.pdf

    《中间件参数调优手册大全》是一份涵盖了多种常用中间件的配置参数详细说明文档,旨在帮助IT从业者优化他们的系统架构。以下将详细介绍其中提到的MySQL相关参数调优知识: MySQL是广泛使用的开源关系型数据库管理...

    MySQL性能调优与架构设计

    5. 参数调优:根据服务器硬件配置和业务特点,调整MySQL的系统变量和配置参数。 三、MySQL架构设计 1. 主从复制:通过主从复制实现数据冗余,提高可用性,同时也可用于读写分离,减轻主库压力。 2. 集群与分布式:...

    liferay性能调优文档

    1. **资源优化**:Liferay性能调优的第一步是优化资源使用,包括内存分配、数据库连接池设置以及磁盘I/O。确保服务器有足够的内存用于运行Liferay,并合理配置JVM参数以避免垃圾回收问题。同时,调整数据库连接池...

    MySQL 5.6-5.7姜承尧调优insidemysql_my

    1. **参数调整**:`my.cnf`文件是MySQL服务器的配置文件,其中包含了各种参数设置,如缓冲池大小、查询缓存、日志文件等。调优首先需要了解这些参数的作用,并根据服务器硬件资源和应用需求进行适当调整。例如,提高...

    Mysql运维调优

    - **并发控制**:通过设置`max_connections`、`thread_cache_size`等参数来优化连接管理。 - **I/O优化**:考虑使用RAID技术提高磁盘读写速度,同时调整`innodb_flush_log_at_trx_commit`等参数减少磁盘I/O操作。 #...

    MySQL数据库调优技术大全

    - `innodb_buffer_pool_size`:根据系统可用内存调整该参数,一般建议设置为50%-60%。 - `innodb_buffer_pool_instances`:增加缓冲池实例的数量可以提高并发性能。 - **MyISAM**: - `key_buffer_size`:该参数...

    数据库性能调优 原理与技术

    另外,数据库参数调优也是提升性能的重要手段。调整连接池大小,设置合理的事务隔离级别,以及优化锁机制,都能对性能产生积极影响。监控系统资源使用情况,如CPU、内存和磁盘I/O,以便及时发现和解决问题。 最后,...

    mysql高性能---mysql数据库的性能调优

    5. **并发控制**:通过调整线程池大小、事务隔离级别等参数,可以平衡并发处理能力和资源消耗,避免过多的锁等待和死锁。 6. **分区与分表**:对于大数据量的表,可以采用分区或分表策略,将数据分散到多个物理存储...

    MySQL DBA性能调优 全攻略

    - `innodb_buffer_pool_instances`参数可以设置为多个实例,以充分利用多核处理器。 - 使用`O_DIRECT`选项(`innodb_flush_method`)可以避免OS缓存带来的额外开销。 2. **检查点机制** - **FUZZY CHECKPOINT**:...

    MySQL管理之道 性能调优、高可用与监控.part2.rar

    《mysql管理之道:性能调优、高可用与监控》由资深mysql专家撰写,以最新的mysql版本为基础,以构建高性能mysql服务器为核心,从故障诊断、表设计、sql优化、性能参数调优、mydumper逻辑、xtrabackup热备份与恢复、...

Global site tag (gtag.js) - Google Analytics