2019年5月7日

[置顶] MySQL 上亿大表优化实践

摘要:[toc] 背景 XX实例(一主一从)xxx告警中每天凌晨在报SLA报警,该报警的意思是存在一定的主从延迟(若在此时发生主从切换,需要长时间才可以完成切换,要追延迟来保证主从数据的一致性) XX实例的慢查询数量最多(执行时间超过1s的sql会被记录),XX应用那方每天晚上在做删除一个月前数据的任务 阅读全文

posted @ 2019-05-07 21:51 Jia-Xin 阅读 (2569) 评论 (6) 编辑

2019年7月23日

MySQL 5.7和8.0性能测试

摘要:[toc] 背景 测试mysql5.7和mysql8.0 分别在读写、只读、只写模式下不同并发时的性能(tps,qps) 前提 测试使用版本为mysql5.7.22和mysql8.0.15 sysbench测试前先重启mysql服务,并清空os的cache(避免多次测试时命中缓存) 每次进行测试都是 阅读全文

posted @ 2019-07-23 21:37 Jia-Xin 阅读 (585) 评论 (7) 编辑

2019年7月15日

MySQL 8.0 information_schema系统库的改进

摘要:[toc] information_schema有何用? 通过I_S获取mysql的一些元数据信息 获取表的数据文件、索引文件的大小、碎片情况、表行数、自增列增长情况等 获取正在运行的事务有那些,是否有阻塞等 获取当前mysql的连接processlist等等 mysql8.0 之前的查询方式 会在 阅读全文

posted @ 2019-07-15 20:37 Jia-Xin 阅读 (188) 评论 (0) 编辑

2019年7月8日

MySQL 全文索引实现简单版搜索引擎

摘要:[toc] 前言 只有Innodb和myisam存储引擎能用全文索引(innodb支持全文索引是从mysql5.6开始的) char、varchar、text类型字段能创建全文索引(fulltext index type) 全文索引的基于关键词的,如何区分不同的关键词了,就要用到分词(stopwor 阅读全文

posted @ 2019-07-08 20:30 Jia-Xin 阅读 (317) 评论 (0) 编辑

2019年6月10日

MySQL 逻辑备份mysqldump&mysqlpump&mydumper原理解析

摘要:[toc] 想弄清除逻辑备份的原理,最好的办法是开启general_log,一探究竟 准备 创建用户 生成10000000条测试数据 开启general_log ip= ; mysql_port=3306; mysql uadmin padmin N B h${ip} P$mysql_port e" 阅读全文

posted @ 2019-06-10 21:58 Jia-Xin 阅读 (169) 评论 (0) 编辑

2019年5月27日

MySQL 如何优化cpu消耗

摘要:[toc] 谁在消耗cpu? 用户+系统+IO等待+软硬中断+空闲 祸首是谁? 用户 用户空间CPU消耗,各种逻辑运算 正在进行大量tps 函数/排序/类型转化/逻辑IO访问... 用户空间消耗大量cpu,产生的系统调用是什么?那些函数使用了cpu周期? 参考[ Linux 性能优化解析](http 阅读全文

posted @ 2019-05-27 22:07 Jia-Xin 阅读 (556) 评论 (2) 编辑

2019年5月26日

Linux 性能优化解析

摘要:前情概述 进程调度 老板 cpu 任劳任怨的打工仔 线程 工作在做什么 可运行队列 拥有的工作清单 上下文切换 和老板沟通以便得到老板的想法并及时调整自己的工作 中断 部分工作做完以后还需要及时向老板汇报 谁在消耗cpu 用户 vs 内核 库时间 vs 应用程序时间 IO等待(cpu实际上空闲) 优 阅读全文

posted @ 2019-05-26 22:49 Jia-Xin 阅读 (204) 评论 (0) 编辑

2019年5月19日

MySQL 加锁和死锁解析

摘要:[toc] 产生死锁的必要条件 多个并发事务(2个或者以上) 每个事物都持有了锁(或者是已经在等待锁) 每个事务都需要再继续持有锁(为了完成事务逻辑,还必须更新更多的行) 事物之间产生加锁的循环等待,形成死锁 常规锁模式 LOCK_S(读锁,共享锁) LOCK_X(写锁,排它锁) 锁的属性 LOCK 阅读全文

posted @ 2019-05-19 22:14 Jia-Xin 阅读 (206) 评论 (0) 编辑

2019年5月13日

Linux 如何用命令查看binlog文件的创建时间

摘要:[toc] 背景 MySQL在26日 16:23:49产生了大量的慢查询,在这段时间内,binlog文件刷新的很快(查看慢日志是mysql DML并发比较多),想知道写完一个binlog文件究竟花了几分钟时间? 分析 三个binlog文件的最后修改间隔时间分别是2 分钟和1 分钟 同一个事务只能写同 阅读全文

posted @ 2019-05-13 22:06 Jia-Xin 阅读 (295) 评论 (0) 编辑

2019年5月12日

MySQL 几种调式分析利器

摘要:[toc] pstack 获取堆栈信息 问题线程的定位 负载较低 mysql_pid=4522 pstack $mysql_pid pstack.info pt pmp对堆栈信息排序 pt pmp pstack.info | less 也可以直接执行pt pmp pt pmp pid 4522 如 阅读全文

posted @ 2019-05-12 20:39 Jia-Xin 阅读 (134) 评论 (0) 编辑

2019年5月7日

MySQL 上亿大表优化实践

摘要:[toc] 背景 XX实例(一主一从)xxx告警中每天凌晨在报SLA报警,该报警的意思是存在一定的主从延迟(若在此时发生主从切换,需要长时间才可以完成切换,要追延迟来保证主从数据的一致性) XX实例的慢查询数量最多(执行时间超过1s的sql会被记录),XX应用那方每天晚上在做删除一个月前数据的任务 阅读全文

posted @ 2019-05-07 21:51 Jia-Xin 阅读 (2569) 评论 (6) 编辑

导航