专题报道:《存储引擎InnoDB》
InnoDB 是 MySQL 上第一个提供外键约束的数据存储引擎,除了提供事务处理外,InnoDB 还支持行锁,提供和 Oracle 一样的一致性的不加锁读取,能增加并发读的用户数量并提高性能,不会增加锁的数量。InnoDB 的设计目标是处理大容量数据时最大化性能,它的 CPU 利用率是其他所有基于磁盘的关系数据库引擎中最有效率的。- 2009/10/18 23:11:30innodb_flush_method带来的性能影响
- innodb_flush_method有三个值,分别是fdatasync,o_dsync和o_direct,其中fdatasync是默认值。它们控制了innodb刷新日志和数据的模式。fdatasync: innodb使用fsync()函数去更新日志和数据文件。o_dsync: innodb使用o_sync模式打开并更新日志文件,用fsync()函数去更新数据文件。o_direct: innodb[阅读全文]
- 专题:存储引擎InnoDB作者:陶方
- 2009/10/18 23:13:10innodb_flush_method 与 Linux File I/O
- 陶方在《innodb_flush_method带来的性能影响》中从实验角度比较了fdatasync,o_dsync和o_direct在性能上的差异。本文将试图从linux/unix”文件i/o”(unbuffered i/o)的角度来解释innodb_flush_method是如何影响mysql的i/o。【附录1】innodb_flush_log_at_trx_commit参数确定日志文件何时wr[阅读全文]
- 专题:存储引擎InnoDB作者:苏普
- 2009/10/19 15:43:51MySQL优化 之 Discuz论坛优化
- 很早以前写过一个文章,是关于discuz论坛的优化:mysql优化 之 discuz论坛优化。写的时候是2006年,没想到过了这么久,discuz论坛的问题还是困扰着很多网友,其实从各论坛里看到的问题总结出来,很关键的一点都是因为没有将数据表引擎转成innodb导致的,discuz在并发稍微高一点的环境下就表现的非常糟糕,产生大量的锁等待,这时候如果把数据表引擎改成innodb的话,我相信会好很多[阅读全文]
- 专题:存储引擎InnoDB作者:yejr
- 2009/10/19 15:45:38show engine innodb status显示信息不全?
- 问题:执行 show engine innodb status\\g 时,显示的信息不全,deadlock相关信息太多,后面的都没了原因:这是mysql客户端的一个bug:bug#19825,交互式客户端限制了输出信息最大为 64kb,因此更多的信息无法显示。解决办法:解决方法有两种:1. 启用 innodb_status_file修改 my.cnf,增加类似下面一行innodb_status_f[阅读全文]
- 专题:存储引擎InnoDB作者:yejr
- 2009/10/19 23:23:18Innodb分表太多或者表分区太多,会导致内存耗尽而宕机...
- 因为线上某个应用表分区太多,直接导致遍历表或者dump数据的时候导致内存耗尽死机。原因是innodb的数据字典不会释放内存,会将所有表和分区的信息记录在内存当中,当表数量或者分区数到达一定数量之后(经验值:约10万张表或者10万个表分区,占用将近1g大小的内存),会导致内存耗尽。my.cnf 配置参数: innodb_additional_mem_pool_size查看数据字典使用多少内存:sho[阅读全文]
- 专题:存储引擎InnoDB作者:ivan
- 2009/10/24 23:16:25MyISAM和InnoDB的一些记录
- key_buffer_size - 这对myisam表来说非常重要。如果只是使用myisam表,可以把它设置为可用内存的 30-40%。合理的值取决于索引大小、数据量以及负载。记住,myisam表会使用操作系统的缓存来缓存数据,因此需要留出部分内存给它们,很多情况下数据比索引大多了。尽管如此,需要总是检查是否所有的 key_buffer 都被利用了。.myi 文件只有 1gb,而 key_buff[阅读全文]
- 专题:存储引擎InnoDB作者:kimi
- 2009/10/31 22:43:56MySQL InnoDB性能调整的一点实践
- 因为javaeye网站的数据库服务器搬家的时候被托管商的工作人员狠狠摔了一下,所以硬盘整个挂掉了,我重新安装数据库服务器的时候,顺手下载了percona patch过的mysql5.0版本,使用mysql自带的heavy innodb配置文件改了改,作为my.cnf启动运行。数据库服务器的物理内存有6gb,其中有4gb可以被mysql使用,my.cnf相关配置参数如下: 以下是代码片段:memlo[阅读全文]
- 专题:存储引擎InnoDB作者:robbin
- 2009/11/8 16:52:33XtraDB存储引擎
- xtradb存储引擎是percona公司对于innodb存储引擎进行改进加强后的产品,第一个版本为1.0.2-1,发布于2008年底。xtradb兼容innodb的所有特性,并且在io性能,锁性能,内存管理等多个方面进行了增强。下载mysql源代码,当前最新的5.1版本为5.1.40http://dev.mysql.com/downloads/mysql/5.1.html#source下载xtra[阅读全文]
- 专题:存储引擎InnoDB作者:NinGoo