安装环境:ubuntu 桌面版12.10 安装版本:mysql-5.5.28.tar.gz 使用root用户安装
su root 在出现的提升中输入密码
1.安装必备工具 1.1.安装cmake编译器 apt-get install cmake
1.2.安装libncurses5-dev包 apt-get install libncurses5-dev 1.
【服务器】 【mysql】 【innodb】 【ubuntu】 【LOG】 【http】 …
本文内容遵从CC版权协议, 可以随意转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明网址: http://www.penglixun.com/tech/database/setting_innodb_table_initial_size.html
InnoDB在写密集的压力时,由于B-Tree扩展,因而也会带来数据文件的扩展,然而,InnoDB数据文件扩展需要使用mutex保护数据文件,这就会导致波动。 丁奇的博客说明了这个问题:http://dinglin.iteye.com/blog/1317874
When InnoDB under heavy write workload, datafiles will extend quickly, because of B-Tree allocate new pages. But InnoDB need to use mutex to protect datafile, so it will cause performance jitter. Xiaobin Lin said this in his blog: http://dinglin.iteye.com/blog/1317874
…
[获取更多]最近看到四篇不错的BLOG文章,没有了全文翻译的冲动,就稍微介绍一下吧。
1) MYSQL TMPDIR ON RAM-DISK
http://www.fromdual.com/mysql-tmpdir-on-ram-disk
mysql需要创建临时表 (temporary tables) 的时候,
如果table_size小于某值,会创建memory类型的表;
如果大于某值,会在硬盘临时目录(/tmp)中创建myisam类型的表。
显然memory的速度比disk要快得多,
所以,可以考虑创建RAM-disk(ramfs或tmpfs),然后把临时目录挂载上去。
个人感觉不如直接把变量tmp_table_size的值调大一些。
2) RESIZE XFS FILE SYSTEM FOR MYSQL
http://www.fromdual.com/resize-xfs-file-system-for-mysql
比如mysql使用一个单独的分区/dev/sdb1,xfs文件系统,
如果sdb1可用空间不足,但是sdb还有剩余空间,
…
MySQL Add Index实现 MySQL各版本,对于add Index的处理方式是不同的,主要有三种: Copy Table方式 这是InnoDB最早支持的创建索引的方式。顾名思义,创建索引是通过临时表拷贝的方式实现的。 新建一个带有新索引的临时表,将原表数据全部拷贝到临时表,然后Rename,完成创建索引的操作。 这个方式创建索引,创建过程中,原表是可读的。但是会消耗一倍的存储空间。 Inplace方式 这是原生MySQL 5.5,以及innodb_plugin中提供的创建索引的方式。所谓Inplace,也就是索引创建在原表上直接进行,不会拷贝临时表。相对于Copy Table方式,这是一个进步。 Inplace方式创建索引,创建过程中,原表同样可读的,但是不可写。 Online方式 这是MySQL 5.6.7中提供的创建索引的方式。无论是Copy …
[获取更多]MySQL Add Index实现 MySQL各版本,对于add Index的处理方式是不同的,主要有三种: Copy Table方式 这是InnoDB最早支持的创建索引的方式。顾名思义,创建索引是通过临时表拷贝的方式实现的。 新建一个带有新索引的临时表,将原表数据全部拷贝到临时表,然后Rename,完成创建索引的操作。 这个方式创建索引,创建过程中,原表是可读的。但是会消耗一倍的存储空间。 Inplace方式 这是原生MySQL 5.5,以及innodb_plugin中提供的创建索引的方式。所谓Inplace,也就是索引创建在原表上直接进行,不会拷贝临时表。相对于Copy Table方式,这是一个进步。 Inplace方式创建索引,创建过程中,原表同样可读的,但是不可写。 Online方式 这是MySQL 5.6.7中提供的创建索引的方式。无论是Copy …
[获取更多]前言 朋友们,大家好! 在9月16日,数据库内核分享——第一期结束之后,本人做了一个预告,将会在今年继续开展数据库内核分享——第二期。 如今,数据库内核分享——第二期姗姗来迟。分享的地点仍旧由 福云咖啡 提供,十分感谢他们的大力支持! 相关事宜 数据库内核分享——第二期的相关事宜,如下: 时间 11月24日下午2:00至6:00 地点 杭州福云咖啡(西湖区西溪路628号福地创业园5楼(紫荆花路紫荆港路间)) 与第一期在同样的位置,参加过第一期的朋友,应该不会迷路了 形式 免费(福云咖啡提供免费的柠檬水,当然,如果想喝咖啡的话,还是要自己买单的:)) 内容 InnoDB 日志/回滚段/崩溃恢复的实现详解。第一期分享的内容,是InnoDB与Oracle的Buffer …
[获取更多]本人的一些数据库内核方面的PPT与资料 MySQL InnoDB 源码实现分析(一):微盘地址 Slideshare地址 MVCC (Oracle, Innodb, Postgres):微盘地址 Slideshare地址 InnoDB Transaction Lock and MVCC:微盘地址 Slideshare地址 Buffer Pool Implementaion InnoDB vs Oracle:微盘地址 视频地址 Slideshare地址 MySQL查询优化浅析:微盘地址 Slideshare地址 InnoDB 日志 回滚段 & 崩溃恢复 实现详解:微盘地址 视频地址 Slideshare地址 … 继续阅读 →
一、简述
是由原来 MySQL 的作者 Michael Widenius
创办的公司所开发的免费开源的数据库服务器。MariaDB基于事务的Maria存储引擎,替换了MySQL的MyISAM存储引擎,它使用了Percona的
XtraDB,InnoDB的变体。这个版本还包括了 PrimeBase XT (PBXT) 和 FederatedX
存储引擎。(摘自:http://baike.baidu.com/view/2521908.htm)
简单的说:MariaDB是MySQL的一个变种,可以作为官方MySQL版本的一个替代品,并且在一些特性上做了增强。
MariaDB的官网见:http://mariadb.org
二、测试环境
2.1 详细测试环境见下图:
2.2 自动化测试脚本例子见下:
#!/bin/sh #export LD_LIBRARY_PATH=/usr/local/mysql/lib/ . ~/.bash_profile >/dev/null 2>&1 BASEDIR="/home/tpcc-mysql" cd $BASEDIR mkdir -p $BASEDIR/logs exec 3>&1 4>&2 1>> tpcc.log …[获取更多]
本PPT,简单介绍了MySQL的查询优化,重点在范围查询优化,包括:代价模型;全表扫描代价计算;索引范围扫描代价计算;统计信息;统计信息收集策略;以及MySQL针对查询优化模块的一些优化。希望对MySQL查询优化有所了解的朋友,建议一看! 考虑到本PPT中,目前主要涉及的内容是MySQL的范围查询优化,因此后续本人会对此PPT进行内容优化与扩展,优化已有的内容,新增Join查询优化,以及Oracle查询优化实现的部分对比。新的PPT,将在本人组织的 #数据库内核分享# 的第三期,或者是第四期中交流,敬请期待! 注1:考虑到slideshare长期被墙,本PPT的微盘地址为:微盘下载