随笔分类 - MySQL
摘要:查看mysql的log-error日志发现如下错误: ERROR 3 (HY000): Error writing file '/tmp/MYbEd05t' (Errcode: 28) 这是由于mysql运行sql时会产生临时文件,这个临时文件大小取决于sql语句和表的大小,当存放临时文件的分区“/
阅读全文
摘要:起因 最近,好几次有开发同学在钉钉上问我,比如下图: 问题归纳起来就是:在MySQL里面update一条记录,语法都正确的,但记录并没有被更新… 结论 小结:在一条UPDATE语句中,如果要更新多个字段,字段间不能使用“AND”,而应该用逗号分隔。 现象 刚遇到这个问题的时候,我拿到这条语句直接在测
阅读全文
摘要:一台MySQL服务器重启后发现主从复制报错 Last_Errno: 1872 Last_Error: Slave failed to initialize relay log info structure from the repository mysql> show slave status\G;
阅读全文
摘要:加班原因是上线,解决线上数据库存在重复数据的问题,发现了程序的bug,很好解决,有点问题的是,修正线上的重复数据。 线上库有6个表存在重复数据,其中2个表比较大,一个96万+、一个30万+,因为之前处理过相同的问题,就直接拿来了上次的Python去重脚本,脚本很简单,就是连接数据库,查出来重复数据,
阅读全文
摘要:使用云上的MySQL时,会遇到很多人询问CDB的 为了更好的了解云上的MySQL,本文将介绍一些重要的知识点。 1.实例类型 目前云数据库 MySQL 支持三种架构:基础版、高可用版、单节点高 IO 版 1、基础版是单个节点部署,价格低,性价比非常高,由于是单节点,数据安全性以及可用性不能保证,不建
阅读全文
摘要:一、基本概念 数据库术语 数据库(database) - 保存有组织的数据的容器(通常是一个文件或一组文件)。 数据表(table) - 某种特定类型数据的结构化清单。 模式(schema) - 关于数据库和表的布局及特性的信息。模式定义了数据在表中如何存储,包含存储什么样的数据,数据如何分解,各部
阅读全文
摘要:我们都知道事务有4种特性:原子性、一致性、隔离性和持久性,在事务中的操作,要么全部执行,要么全部不做,这就是事务的目的。事务的隔离性由锁机制实现,原子性、一致性和持久性由事务的redo 日志和undo 日志来保证。所以本篇文章将讨论关于事务中的redo和undo的几个问题: redo 日志与undo
阅读全文
摘要:MySQL中对于表上ID自增列可以在创建表的时候指定列上的auto_increment属性和auto_increment_offset属性。 auto_increment_increment控制列中的值的增量值,也就是步长。 auto_increment_offset确定AUTO_INCREMENT
阅读全文
摘要:当主库宕机后,延迟从库如何才能"取消"主动延迟,以便恢复服务? 问题描述 本问题来自一位群友,他遇到的情况我简单归纳一下: 实例A是主库,B是延迟从库(设置了延迟7200秒)。 当A挂掉后(已无法连接,或无法启动),希望用B提升成主库。 但是在B上执行 change master to MASTER
阅读全文
摘要:故障现象:一套mysql数据库,数据文件所在的磁盘空间满了,数据库宕机了;清理文件再启动数据库报错[ERROR] InnoDB: Header page contains inconsistent data in datafile,启动不了 尝试innodb force recovery从1-6逐一
阅读全文
摘要:目录 基本说明 常用选项(OPTIONS) DSN选项(DSN) --replicate选项说明 复制安全 使用限制 用法示例 环境与数据准备 只有1个DSN主机 有多个DSN主机 输出说明 注意事项 工作流程 总结 参考 正文 pt-table-sync - Synchronize MySQL t
阅读全文
摘要:目录 基本说明 常用选项(OPTIONS) DSN选项(DSN) 从库检查(REPLICA CHECKS) 使用限制 用法示例 环境与数据准备 执行一致性校验 输出字段解析 获取校验结果 工具其他选项 工作流程 总结 参考 正文 pt-table-checksum - Verify MySQL re
阅读全文
摘要:目录 安装 基本说明 常用选项(OPTIONS) DSN选项(DSN) 使用限制 用法示例 工作流程 总结 参考 正文 pt-online-schema-change - ALTER tables without locking them. pt-online-schema-change alter
阅读全文
摘要:目录 基本说明 常用选项(OPTIONS) DSN选项(DSN) 选项用法说明 用法示例 环境与数据准备 表归档到表(逐行进行) 表归档到表(批量进行) 表归档到文件 表清除数据 表自增字段处理 工作流程 总结 参考 正文 pt-archiver - Archive rows from a MySQ
阅读全文
摘要:前言 随着业务量的增长,存储在 MySQL 中的数据日益剧增,如果业务量不讲武德,搞偷袭,趁我没反应过来把很多表,很快,都打到了千万级别,亿级别。如果大意,没有闪,这就导致跟其 Join 的表的 SQL 变得很慢,对应用接口的 response time 也变长了,影响了用户体验。 一般常见增长量巨
阅读全文
摘要:当我们只关心数据表有多少记录行而不需要知道具体的字段值时,类似“select 1 from tblName”是一个很不错的SQL语句写32313133353236313431303231363533e4b893e5b19e31333361313866法,它通常用于子查询。这样可以减少系统开销,提高运
阅读全文
摘要:启用MySQL并行复制 MySQL 5.7的并行复制建立在组提交的基础上,所有在主库上能够完成 Prepared 的语句表示没有数据冲突,就可以在 Slave 节点并行复制。 关于 MySQL 5.7 的组提交,我们要看下以下的参数: 1 2 3 4 5 6 7 8 (test) > show gl
阅读全文
摘要:去掉mysql: [Warning] Using a password on the command line interface can be insecure. 5.7版本使用mysql执行sql命令都会有这行,去掉方法重定向 echo "select version()"|mysql -S /
阅读全文
摘要:上次打了慢sql日志,发现有很多包含count逻辑的sql,周末抽空来梳理下mysql里的count。 一. count(*)的实现与执行 在mysql中,不同的存储引擎,count(*)的实现方式是不同的 Myisam: Myisam会把表的行数存在磁盘上,每当执行count(*)的时候,直接返回
阅读全文
摘要:概述 XtraBackup 是一款对于 MySQL 物理备份必不可少的工具,但是有时候在备份数据量级较大的数据库时,如果未做优化的话,还是有点慢,当然相对于逻辑备份,已然是很快了,那到底还能不能再快一点呢,又是什么参数在影响着 XtrBackup 的备份速度呢?带着这个疑问我们往下看。 首先我们需要
阅读全文