上一页 1 ··· 5 6 7 8 9 10 11 12 下一页
摘要: xtrabackup是Percona公司CTO Vadim参与开发的一款基于InnoDB的在线热备工具,具有开源,免费,支持在线热备,备份恢复速度快,占用磁盘空间小等特点,并且支持不同情况下的多种备份形式。xtrabackup的官方下载地址为http://www.percona.com/softwa... 阅读全文
posted @ 2014-04-08 00:19 yayun 阅读(28197) 评论(3) 推荐(5) 编辑
摘要: 在数据库的日常维护中,对于数据量小的备份,我们常常采用的是逻辑备份,也就是使用mysqldump导出。数据量比较大的备份会使用percona的xtrabackup,关于xtrabackup工具的使用以及原理请参考我前面的文章xtrabackup详解,当然还有其他的方法。现在我们主要来深入看看mysqldump几个比较常用参数的原理。要需要了解mysqldump各种参数做了什么,我们需要打开查询日志来分析,打开查询日志很简单,在[mysqld]段落添加如下参数:general_log=1general_log_file=/data/mysql/general.log重启mysql服务器,然后我们 阅读全文
posted @ 2014-04-04 00:05 yayun 阅读(1852) 评论(0) 推荐(0) 编辑
摘要: 1.禁止操作系统更新文件的atime属性 atime是Linux/UNIX系统下的一个文件属性,每当读取文件时,操作系统都会将读操作时间回写到磁盘上。对于读写频繁的数据库文件来说,记录文件的访问时间一般没有任何用处,却会增加磁盘系统的负担,影响I/O性能!因此,可以通过设置文件系统的mount熟悉, 阅读全文
posted @ 2014-04-03 21:49 yayun 阅读(3525) 评论(1) 推荐(0) 编辑
摘要: MySQL通过BINLOG记录执行成功的INSERT,UPDATE,DELETE等DML语句。并由此实现数据库的恢复(point-in-time)和复制(其原理与恢复类似,通过复制和执行二进制日志使一台远程的MySQLl数据库,多称为slave,进行实时同步)。MySQL 5.5.x以后的版本支持3... 阅读全文
posted @ 2014-04-01 01:27 yayun 阅读(3904) 评论(0) 推荐(0) 编辑
摘要: 教科书上的B+Tree是一个简化了的,方便于研究和教学的B+Tree。然而在数据库实现时,为了更好的性能或者降低实现的难度,都会在细节上进行一定的变化。下面以InnoDB为例,来说说这些变化。04- Sparse Index中的数据指针在"由浅入深理解索引的实现(1)"中提到,Sparse Inde... 阅读全文
posted @ 2014-03-31 17:25 yayun 阅读(497) 评论(0) 推荐(0) 编辑
摘要: SQL优化最重要的就是理解执行计划,理解索引工作原理。这篇文章也是网上无意中发现的,说的通俗易懂,所以转载。00 – 背景知识- B-Tree & B+Treehttp://en.wikipedia.org/wiki/B%2B_treehttp://en.wikipedia.org/wiki/B-t... 阅读全文
posted @ 2014-03-31 16:36 yayun 阅读(904) 评论(0) 推荐(0) 编辑
摘要: 推荐阅读这篇博文,索引说的非常详细到位:http://blog.linezing.com/?p=798#nav-3-2在数据库日常维护中,最常做的事情就是SQL语句优化,因为这个才是影响性能的最主要因素。当然还有其他方面的,比如OS优化,硬件优化,MySQL Server优化,数据类型优化,应用层优... 阅读全文
posted @ 2014-03-29 18:21 yayun 阅读(20620) 评论(3) 推荐(2) 编辑
摘要: 通过 SHOW STATUS 可以提供服务器状态信息,也可以使用 mysqladmin extendedstatus 命令获得。SHOW STATUS 可以根据需要显示 session 级别的统计结果和 global级别的统计结果。以下几个参数对 Myisam 和 Innodb 存储引擎都计数:1. Com_select 执行 select 操作的次数,一次查询只累加 1;2. Com_insert 执行 insert 操作的次数,对于批量插入的 insert 操作,只累加一次;3. Com_update 执行 update 操作的次数;4. Com_delete 执行 delete 操作的次 阅读全文
posted @ 2014-03-28 09:39 yayun 阅读(1974) 评论(0) 推荐(1) 编辑
摘要: 有时候需要索引很长的字符列,这会让索引变得大且慢。通常可以索引开始的部分字符,这样可以大大节约索引空间,从而提高索引效率。但这样也会降低索引的选择性。索引的选择性是指不重复的索引值(也称为基数,cardinality)和数据表的记录总数的比值,范围从1/#T到1之间。索引的选择性越高则查询效率越高,因为选择性高的索引可以让MySQL在查找时过滤掉更多的行。唯一索引的选择性是1,这是最好的索引选择性,性能也是最好的。一般情况下某个前缀的选择性也是足够高的,足以满足查询性能。对于BLOB,TEXT,或者很长的VARCHAR类型的列,必须使用前缀索引,因为MySQL不允许索引这些列的完整长度。诀窍在 阅读全文
posted @ 2014-03-27 18:08 yayun 阅读(18208) 评论(0) 推荐(0) 编辑
摘要: 在 Linux 操作系统上运行内存需求量较大的应用程序时,由于其采用的默认页面大小为 4KB,因而将会产生较多 TLB Miss 和缺页中断,从而大大影响应用程序的性能。当操作系统以 2MB 甚至更大作为分页的单位时,将会大大减少 TLB Miss 和缺页中断的数量,显著提高应用程序的性能。这也正是 Linux 内核引入大页面支持的直接原因。好处是很明显的,假设应用程序需要 2MB 的内存,如果操作系统以 4KB 作为分页的单位,则需要 512 个页面,进而在 TLB 中需要 512 个表项,同时也需要 512 个页表项,操作系统需要经历至少 512 次 TLB Miss 和 512 次缺页中 阅读全文
posted @ 2014-03-27 11:32 yayun 阅读(3257) 评论(0) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 11 12 下一页