随笔分类 -  MySQL

摘要:前阵子,突然收到服务器的报警信息,于是上服务器找问题,我擦,top看到mysql占的%cpu高得把我吓尿了从以上的信息看,相信大家已经可以定位到底是那个程序导致服务器CPU负载过高了,但我们要做的是,找出mysql进程下,是什么动作导致服务器出现性能问题以下做个实验,相信大家看了后也能猜到当时是什么... 阅读全文
posted @ 2014-11-20 20:35 GoogSQL 阅读(926) 评论(0) 推荐(0) 编辑
摘要:以下内容出自《高性能MySQL》第三版,了解事务的ACID及四种隔离级有助于我们更好的理解事务运作。下面举一个银行应用是解释事务必要性的一个经典例子。假如一个银行的数据库有两张表:支票表(checking)和储蓄表(savings)。现在要从用户Jane的支票账户转移200美元到她的储蓄账户,那么至... 阅读全文
posted @ 2014-11-17 15:38 GoogSQL 阅读(13820) 评论(1) 推荐(2) 编辑
摘要:随着MySQL的不断更新,由于各存储引擎功能特性差异较大,这篇文章主要是介绍如何来选择合适的存储引擎来应对不同的业务场景,朋友们可以根据业务需求,选择合适的存储引擎。^.^MyISAM特性不支持事务:MyISAM存储引擎不支持事务,所以对事务有要求的业务场景不能使用表级锁定:其锁定机制是表级索引,这... 阅读全文
posted @ 2014-11-13 16:21 GoogSQL 阅读(2919) 评论(0) 推荐(0) 编辑
摘要:转载自:http://imysql.com/2014/08/13/mysql-faq-howto-shutdown-mysqld-fulgraceful.shtml本文分析了mysqld进程关闭的过程,以及如何安全、缓和地关闭MySQL实例,对这个过程不甚清楚的同学可以参考下。关闭过程: 1、发起s... 阅读全文
posted @ 2014-11-11 19:34 GoogSQL 阅读(695) 评论(0) 推荐(0) 编辑
摘要:一、问:如果有一张表,里面有个字段为id的自增主键,当已经向表里面插入了10条数据之后,删除了id为8,9,10的数据,再把mysql重启,之后再插入一条数据,那么这条数据的id值应该是多少,是8,还是11?答:如果表的类型为MyISAM,那么是11。如果表的类型为InnoDB,则id为8。这是因为... 阅读全文
posted @ 2014-11-11 19:06 GoogSQL 阅读(572) 评论(0) 推荐(0) 编辑
摘要:看到大牛用户DB架构部的Keithlan《数据库性能优化之查询优化》,在学习过程发现很多不错的东西,就把它保存下来,分享给大家,因为作者说了一句很经典的话:“if you want to go fast,go alone; if you want to ga far,go together!”,嘻嘻... 阅读全文
posted @ 2014-11-11 15:05 GoogSQL 阅读(2001) 评论(0) 推荐(1) 编辑
摘要:对于比较繁忙的OLTP(在线事务处理)系统,由于每天生成日志量大,这些日志如果长时间不清除,将会对磁盘空间带来很大的浪费。因此,定期删除日志是DBA维护MySQL数据库的一个重要工作内容。下面跟大家分享几种删除MySQL binlog的方法。出自《深入浅出MySQL》第二版,如果你在虚拟机做实验导致... 阅读全文
posted @ 2014-11-09 11:53 GoogSQL 阅读(1452) 评论(1) 推荐(0) 编辑
摘要:pt-ioprofile,是一个percona的性能分析工具,可以查看进程输出、输入,打印一些表文件及活动IO。pt-ioprofile是一个只读工具,所以对数据没风险。由于网上对pt-ioprofile的安装说明比较少,很多小伙伴都无从下手^.^下面介绍一下pt-ioprofile的安装过程:#... 阅读全文
posted @ 2014-10-21 16:51 GoogSQL 阅读(7485) 评论(0) 推荐(0) 编辑
摘要:我们简单交流下InnoDB master thread学习,有兴趣的朋友可以参考>void master_thread(){ goto loop;loop:for (int i=0;i每秒执行操作(负载在情况下会延迟) do log buffer flush to disk //重做日... 阅读全文
posted @ 2014-10-21 16:26 GoogSQL 阅读(2005) 评论(2) 推荐(0) 编辑
摘要:数据库系统数据库库系统有3个主要的组成部分。 数据库应用程序:为了提高数据库系统的处理能力所使用的管理数据库的软件补充。 数据库管理系统:用于管理数据库的软件。 数据库:用于存储数据的地方。 数据库(Database System)提供了一个存储空间用以存储各种数据,可以将数据库视为一个存储数据的容... 阅读全文
posted @ 2014-10-21 11:03 GoogSQL 阅读(650) 评论(0) 推荐(0) 编辑
摘要:工作原理:查询缓存的工作原理,基本上可以概括为: 缓存SELECT操作或预处理查询(注释:5.1.17开始支持)的结果集和SQL语句; 新的SELECT语句或预处理查询语句,先去查询缓存,判断是否存在可用的记录集,判断标准:与缓存的SQL语句,是否完全一样,区分大小写;查询缓存对什么样的查询语句,无... 阅读全文
posted @ 2014-10-20 16:45 GoogSQL 阅读(6089) 评论(0) 推荐(0) 编辑
摘要:相对其他数据库而言,MySQL的锁机制比较简单,基最显著的特点是不同的存储引擎支持不同的锁机制。比如,MyISAM和MEMORY存储引擎采用的是表级锁(table-level locking);BDB存储引擎采用的是页面锁(page-level locking),但也去支持表级锁;InnoDB存储引... 阅读全文
posted @ 2014-10-19 14:58 GoogSQL 阅读(791) 评论(0) 推荐(0) 编辑
摘要:一、复制概述1.1、复制解决的问题 数据复制技术有以下一些特点: (1)数据分布 (2)负载平衡(load balancing) (3) 高可用性(high availability)和容错(4)备份1.2、复制如何工作 从高层来看,复制分成三步: (1)master将改变记录到二进制日志(bin... 阅读全文
posted @ 2014-09-28 17:07 GoogSQL 阅读(487) 评论(0) 推荐(0) 编辑
摘要:下面教大家如何利用MySQL Sandbox迅速搭建多个mysql实例。MySQL Sandbox是什么呢?简单来说就是一个沙盒,可以用于快速搭建mysql的环境,让我们可以不用费劲的去安装,或者编译,通常对于学习来说是不错的选择,这案例是方便自己学习和练习使用,而非线上环境。项目主页:http:/... 阅读全文
posted @ 2014-09-28 17:05 GoogSQL 阅读(1591) 评论(0) 推荐(0) 编辑
摘要:在生产环境中,主从复制常常会有复制延迟的现象,主要是master是并发的写,而slave是单线程的应用relay log,所以会出现复制延时,在MySQL 5.6版本中有了基于库的多线程复制。还有MariaDB的并行复制。但是我们使用MySQL 5.5的版本也比较多。如何判断复制是否延时呢?工具现在... 阅读全文
posted @ 2014-09-28 16:53 GoogSQL 阅读(1268) 评论(0) 推荐(0) 编辑