【MySQL】再说MySQL中的 table_id
最近线上一个实例出现了主从数据不一致的情况,也即从库丢失数据的情况。根本原因:"由于table_list->table_id为uint,而m_table_id为ulong,主库上assign的table map id 总是一直递增的当超过2^32后,备库出现溢出,导致row模式下备库对应table id的事件全部丢失,产生主备不一致。"
【MySQL】MySQL与IO
数据库作为存储系统,所有业务访问数据的操作都会转化为底层数据库系统的IO行为(缓存系统也可以当做是key-value的数据库),本文主要介绍访问mysql数据库的IO流程以及IO相关的参数。
【MySQL】double write 浅析
mysql 通过double wriate 方式 增加系统的写入数据的可靠性
【MySQL】文件描述符导致报警一则
【MySQL】sync_binlog innodb_flush_log_at_trx_commit 浅析
innodb_flush_log_at_trx_commit和sync_binlog 两个参数是控制MySQL 磁盘写入策略以及数据安全性的关键参数。本文从参数含义,性能,安全角度阐述两个参数为不同的值时对db 性能,数据的影响.
【MySQL】常见slave 延迟原因以及解决方法
运维过程中大多数MySQL dba会遇到slave 延迟的问题,本章介绍常见的导致slave延迟的原因和解决方法。
【MySQL】如何快速执行 binlog
维护mysql的时候,总会遇到数据库恢复的例子。如果把备份集恢复出来相对比较简单。然而如果遇到恢复到时间点的例子,把一个MySQL实例恢复出来之后,需要执行binlog做增量恢复,如何快速的增量应用binlog呢?
【MySQL】性能优化之 index merge (1)
一 序言介绍MySQL 5.0 版本之前,每条个表在查询时 只能使用一个索引,有些不知道此功能限制的开发总是在一个表上创建很多单独列的索引,以便当where条件中含有这些列是能够走上索引。但是这样并不是一个好方法,或...
【MySQL】性能优化之 count(*) VS count(col)
优化mysql数据库时,经常有开发询问 count(1)和count(primary_key) VS count(*)的性能有何差异?看似简单的问题,估计会有很多人对此存在认知误区:1. 认为count(1) 和 count(primary_key) 比 count(*) 的性能好...
【MySQL】性能优化之 覆盖索引
一个包含查询所需的字段的索引称为 covering index 覆盖索引。MySQL只需要通过索引就可以返回查询所需要的数据,而不必在查到索引之后进行回表操作,减少IO,提供效率。 当你对一个sql 使...
【MySQL】子查询之一
MySQL 从版本4 开始支持 SQL 标准要求的所有子查询格式和操作,同时扩展了特有的几种特性。本文会介绍子查询的类型以及相关的注意点。一 什么是子查询 子查询是将一个 SELECT 语句的查询结...
【MySQL】性能优化之 straight_join
研究过或者熟悉oracle性能调优的朋友都知道oracle 提供很多hint 指定from 后的表的连接顺序,如use_hash ordered ,leading 等,而MySQL 对表的连接只支持 nested loop Join, 提供的...
【MySQL】Incorrect string value 问题一则
【问题现象】凌晨一个客户实例报警slave sql 进程由于报如下错误而停止:mysql> show slave status \G*************************** 1. row ***************************  ...
【MySQL】online ddl 工具之pt-online-schema-change
MySQL ddl 的问题现状在运维mysql数据库时,我们总会对数据表进行ddl 变更,修改添加字段或者索引,对于mysql 而已,ddl 显然是一个令所有MySQL dba 诟病的一个功能,因为在MySQL中在对表进行ddl时,会锁表,当表比...
【MySQL】Innodb 恢复工具介绍
在和数据打交道的过程中,总会遇到误删除数据的情况,在没有备份和binlog的情况下,如何恢复呢?本文介绍一个工具Percona Data Recovery Tool for InnoDB 使用 该工具的 注意事项:1 The to...
【MySQL】计算 TPS,QPS 的方式
在做db基准测试的时候,qps,tps 是衡量数据库性能的关键指标。本文比较了网上的两种计算方式。先来了解一下相关概念。概念介绍:QPS:Queries Per Second 查询量/秒...
【MySQL】 DB 回滚崩溃案例一则
背景一个测试人员对性能数据库进行性能压测 ,由于存储过程写的有问题,对一个大表进行大量更新为及时提交 ,见proc hang 住就kill 掉进程,然后长时间等待未果直接重启mysql 服务。之后错误日志中报错:130516 20:4...
【MySQL】删除大量数据的具体实现
ourmysql博客中提供了 《大表删除数据的思路》,对于大表依据主键删除的思路是必须的,删除几千万的数据还算是比较简单的,如果你的数据库中的表高达数百亿条记录 ,删除其中的几十亿,就需要考虑可用性的问题了。上...
【MySQL】解决mysql的 1594 错误
对于主从架构的mysql,当发生主机断电或者其他原因异常crash的时候, slave的容易发生读取binlog出错的问题,最常见的是 show slave status \G;Master_Log_File: mysql-bin.000029Read_Master_Log_Pos: 3154083Re...
【MySQL】使用event 的具体 案例
前一篇文章介绍了 event 用法,本文介绍一个实际的使用案例1 首先创建一个存储过程 删除指定时间之前的数据。delimiter //CREATE PROCEDURE `proc_del_response_per_day`(in com_num int , in push_time datet...