Mysql InnoDb详解

本文深入解析了Mysql的InnoDB存储引擎,介绍了其支持事务、行锁和外键的特点,以及如何通过自身的缓存机制优化大数据量处理的性能。文章详细解释了InnoDB的配置参数,包括表空间定义、内存管理和日志文件设置,帮助读者理解InnoDB如何在不同场景下高效运行。
Mysql InnoDb详解
作者:wstruecolor

InnoDb 介绍:
InnoDb 存储引擎,支持事务,行锁,外键.InnoDb 设计用来处理大数据量时提供最好的
性能.
InnoDb 提供自己的缓存(buffer pool) 还缓存数据和索引.innodb 把数据和索引存放
到表空间(tablespace) ,表空间是几个磁盘文件或者是原是设备文件(raw disk). 它
不像MyISAM 存储引擎,每个表只是一个文件.(这样在某些系统下最大2G限制). 而Innodb
没有此限制,可以无限扩展.
Mysql4.0 的以后版本都支持innodb 存储.

InnoDb 配置:
innodb 管理的两个磁盘文件是表空间文件和日志文件.
表空间定义:
innodb_data_file_path=datafile_spec1[;datafile_spec2]...
文件声明格式: file_name:file_size[:autoextend[:max:max_file_size]]
innodb_data_home_dir 声明文件存放目录.

mysql 读取配置文件的顺序:
`/etc/my.cnf' Global options.
`DATADIR/my.cnf' Server-specific options.
`defaults-extra-file' The file specified with the --defaults-extra-file option.
`~/.my.cnf' User-specific options.

内存使用下面的加起来不要超过2G:

innodb_buffer_pool_size
+ key_buffer_size
+ max_connections*(sort_buffer_size+read_buffer_size+binlog_cache_size)
+ max_connections*2MB

InnoDb 参数说明:

innodb_additional_mem_pool_size
存储数据字典信息和内部结构信息, 如果你的表越多,这个需要的内存就越多,如果你预留的空间不够,就开始象系统申请内存.errlog 会有错误. 缺省设置为1M.
innodb_autoextend_increment
当表空间满时字段扩展大小.

innodb_buffer_pool_size
数据和索引用的缓存大小.一般时系统物理内存的50~80% .
 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10797429/viewspace-101492/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10797429/viewspace-101492/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值