随笔分类 -  MySQL

摘要:日常的数据备份及恢复测试,是DBA工作重中之重的事情,所以要做好备份及测试,日常的备份常见有mysqldump+binlog备份、xtrabackup+binlog备份,无论那一种,几乎都少不了对binlog的备份,说明了binlog在数据恢复中的重要性,下面做个小测试,是工作中不少运维或者新人DB 阅读全文
posted @ 2017-03-29 11:42 GoogSQL 阅读(1266) 评论(0) 推荐(0) 编辑
摘要:目前对MySQL比较流行的备份方式有两种,一种上是使用自带的mysqldump,另一种是xtrabackup,对于数据时大的环境,普遍使用了xtrabackup+binlog进行全量或者增量备份,那么如何快速的从xtrabackup备份中恢复单张表呢?从mysql 5.6版本开始,支持可移动表空间( 阅读全文
posted @ 2017-03-24 11:07 GoogSQL 阅读(5776) 评论(0) 推荐(0) 编辑
摘要:DBA或开发人员,有时会误删或者误更新数据,如果是线上环境并且影响较大,就需要能快速回滚。传统恢复方法是利用备份重搭实例,再应用去除错误sql后的binlog来恢复数据。此法费时费力,甚至需要停机维护,并不适合快速回滚。也有团队利用LVM快照来缩短恢复时间,但快照的缺点是会影响mysql的性能。现在 阅读全文
posted @ 2017-03-23 16:42 GoogSQL 阅读(5975) 评论(1) 推荐(2) 编辑
摘要:朋友们调侃说,运维是个把脑袋别在裤腰带上的活,更有人说,运维是个把脑袋别在他人裤腰带上的活,苦劳没人认,有锅就有得背! 测试的同学说,“吃瓜群众很难感知运维背后的付出,倒是出了事情更能体现我们的专业性。”小样儿,你这是还没有掉坑里过。 所以,最好就是减少锅的出现。 但是,锅来了,大家就得背,甭管你是 阅读全文
posted @ 2017-03-15 11:01 GoogSQL 阅读(1111) 评论(0) 推荐(0) 编辑
摘要:一、基础规范 (1)必须使用InnoDB存储引擎 解读:支持事务、行级锁、并发性能更好、CPU及内存缓存页优化使得资源利用率更高 (2)必须使用UTF8字符集 解读:万国码,无需转码,无乱码风险,节省空间 (3)数据表、数据字段必须加入中文注释 解读:N年后谁tm知道这个r1,r2,r3字段是干嘛的 阅读全文
posted @ 2017-02-23 11:12 GoogSQL 阅读(1176) 评论(0) 推荐(0) 编辑
摘要:大家都知道MySQL Binlog 有三种格式,分别是Statement、Row、Mixd。Statement记录了用户执行的原始SQL,而Row则是记录了行的修改情况,在MySQL 5.6以上的版本默认是Mixd格式,但为了保证复制数据的完整性,建议生产环境都使用Row格式,就前面所说的Row记录 阅读全文
posted @ 2016-03-16 16:58 GoogSQL 阅读(4377) 评论(0) 推荐(2) 编辑
摘要:现在流行的监控系统很多,选择一个合适自己的就可以了,例如Zabbix、Nagios;监控MySQL为主的有MySQLMTOP、Lepus。本文主要介绍快速部署lepus以及监控MySQL,因为作为DBA我们还是注重MySQL的监控,当然系统状态也非常重要,监控成为我们日常工作不可缺少,废话就不多说了 阅读全文
posted @ 2016-02-19 14:34 GoogSQL 阅读(14485) 评论(0) 推荐(2) 编辑
摘要:MySQL 5.7已经开始支持了多源复制,相信小伙们都很激动,MySQL 5.7之前只能实现一主一从、一主多从或者多主多从的复制,如果想实现多主一从的复制,只好使用MariaDB,但是MariaDB又与官方的MySQL版本不兼容的,在MySQL 5.7版本已经可以实现多主一从的复制了。MySQL ... 阅读全文
posted @ 2016-01-22 21:33 GoogSQL 阅读(18494) 评论(1) 推荐(3) 编辑
摘要:MySQL 5.7版本据说已经在了很大的性能提升以及做得更加安全了,想了解更多MySQL 5.7的新特性可以参考我转载叶金荣老师的MySQL 5.7的新特性说明。这里我简单演示一下MySQL 5.7的安装已经一些新特性的使用,希望大家能一起进去,一起探讨技术。 MySQL 5.7的官方下载地址:ht 阅读全文
posted @ 2016-01-21 15:25 GoogSQL 阅读(24399) 评论(0) 推荐(0) 编辑
摘要:最近经常线上的Slave老报1062的错误,蛋碎一地,幸好Slave暂时没有用到业务上,也就是说没有做读写分离,所以Slave有问题,影响也不大,但每隔一阵子就报1062主键冲突的错误,让我好纠结,如果不解决的话,我都不敢上Atlas,所以一直在排查到底是什么引起的。虽然大家都知道当Master插... 阅读全文
posted @ 2015-12-16 17:09 GoogSQL 阅读(650) 评论(0) 推荐(0) 编辑
摘要:MySQL 5.7版本新特性连载(一)本文将和大家一起分享下5.7的新特性,不过我们要先从即将被删除的特性以及建议不再使用的特性说起。根据这些情况,我们在新版本及以后的版本中,应该不再使用,避免未来产生兼容性问题。本文是基于MySQL-5.7.7-rc版本,未来可能 还会发生更多变化。1、即将删除的... 阅读全文
posted @ 2015-10-22 09:58 GoogSQL 阅读(2918) 评论(0) 推荐(1) 编辑
摘要:最近查看慢查询日志,一直有看到SELECT * FROM tb_name的SQL语句,在之前SQL审核的时候,也没发现有这些SQL的存在,所以很好奇这里怎么出现的,后来用了vc-mysql-sniffer脚本去抓SQL来分析,也没有找出SELECT * 之类的SQL,下面我上图让分析一下:slo... 阅读全文
posted @ 2015-10-06 16:07 GoogSQL 阅读(3328) 评论(0) 推荐(0) 编辑
摘要:最近工作很忙,很久没写博客,嘻嘻!今天写一遍关于MySQL重复数据处理的博客!前不久有个开发问我,能不能把重复的数据去除,留下唯一的数据。然后我问他为什么有这么重复的数据呢,他说写了程序去爬数据,爬到很多重复的。我擦,你就不能添加主键或者唯一键保证行数据的唯一性吗?表或结果集有时含有重复记录,有时... 阅读全文
posted @ 2015-09-26 23:03 GoogSQL 阅读(971) 评论(0) 推荐(0) 编辑
摘要:下面说一个线上环境的数据恢复案例,线上环境误操作的事情,随时都有可能发生的,这时候运维DBA或者DBA会想,没人会傻到把数据库干掉的吧?又或者没有会闲得蛋痛删除了几条数据又想恢复这么无聊吧?适适这样的人才多着呢,不过,人非圣贤孰能无过,当这事情发生的时候,我们更多的是想办法去解决,以及多给开发或者... 阅读全文
posted @ 2015-07-01 15:08 GoogSQL 阅读(2297) 评论(0) 推荐(0) 编辑
摘要:MySQL 5.6 的新特性之一,是加入了全局事务 ID (Global Transaction ID) 来强化数据库的主备一致性,故障恢复,以及容错能力。官方文档:http://dev.mysql.com/doc/refman/5.6/en/replication-gtids.html在这篇文档... 阅读全文
posted @ 2015-06-29 23:56 GoogSQL 阅读(1316) 评论(0) 推荐(0) 编辑
摘要:复制的介绍: 根据日志定义的模式不一样,可以分为:Statement(SBR)模式,Row(RBR)格式或者是MIXED格式,记录最小的单位是一个Event,binlog日志前4个字节是一个magic number,接下来19个字节记录Format desc evnet:FDE。MySQL5.6版本... 阅读全文
posted @ 2015-06-29 19:48 GoogSQL 阅读(1903) 评论(0) 推荐(0) 编辑
摘要:现在不少公司都在用MySQL(master)-->MySQL(slave)的框架,当然也有一主多从的架构,这也是MySQL主从的一个延伸架构;当然也有的公司MySQL主主的架构,MySQL主主架构要是处理得不适当,会面临各种各样的问题,当然啦,每种数据库构架都有自己的优缺点,合适自己公司业务需求的且 阅读全文
posted @ 2015-06-10 20:45 GoogSQL 阅读(7867) 评论(0) 推荐(2) 编辑
摘要:以前我很好奇通过执行计划Explain去分析SQL的时候看到的key_len值有时很小,有时看到很大,那时也不知道它是怎么算出来的,现在终于搞懂了,嘻。因为网上对key_len的长度的计算的资料也很少,官网也如此。我相信还有很多人不关心key_len的值是怎么来的,或者key_len有什么用的。k... 阅读全文
posted @ 2015-06-06 14:41 GoogSQL 阅读(9905) 评论(3) 推荐(3) 编辑
摘要:最近经常在线上经常遇到有性能问题的SQL,有些表没有合理添加索引,有些表添加的索引不合理,各种各样的问题,导致SQL的执行效率不高。这时DBA们不得不重构SQL,使其达到最好的性能,这时我们往往要在线添加或者删除索引、字段等等的操作。如果是MySQL 5.5的版本在DDL方面是要付出代价的,虽然已... 阅读全文
posted @ 2015-06-04 15:55 GoogSQL 阅读(2002) 评论(0) 推荐(1) 编辑
摘要:最近在线上发现很多性能有问题的sql,开发写sql语句的时候,没充分考虑是否用上索引了,所以这个坑得DBA来填,好了,废话不多说,把一些线上的优化经验跟大家分享。由于是线上的表,所以就不公开具体的表结构了,请大家体谅,我会模拟一个类似的表来说明当时的性能问题:当时的表结构类似此表:mysql> sh... 阅读全文
posted @ 2015-05-29 11:48 GoogSQL 阅读(4589) 评论(1) 推荐(1) 编辑