All Stories

MySQL手记0 — MySQL安装方式

MySQL的安装,是了解数据库的第一步,安装时的一些内容,可以让我们理解MySQL的文件基本结构。

MySQL手记3 — 关注MySQL版本

为什么要不断关注版本?版本的特性为何?

MySQL手记7 — MySQL Utilities工具包

从安装过程打印的信息来看,MySQL Utilities工具包是使用Python进行开发的,并在安装过程把python脚本复制在/use/bin目录下,新增了多个mysql*开头的可执行文件,这些文件,就是Utilities中的工具。

MySQL手记6 — percona-toolkit工具包

对于经常用到的工具,例如使用pt-archiver进行数据的归档、使用pt-online-schema-change进行表结构的变更、使用pt-table-checksum对比两个表的checksum是否一致等等,都能灵活的进行。

MySQL手记5 — 数据库升级准备

数据迁移是一个很重要的过程,需规划严格的流程,并制定回滚方案。对于数据库系统,若能够满足业务需求,都是尽量不动,我曾看到过uptime为10+年的数据库系统,不得不佩服开发人员和产品对于该产品的把控程度。

MySQL手记4 — Sysbench进行QPS性能测试

加上上篇的MySQL手记2 -- sysbench测试磁盘IO,已经可以使用sysbench测试得到IOPS和QPS/TPS的结果了,这对于业务上线,提供了参考​。压测这一步,也不能马虎​。

MySQL手记2 — sysbench测试磁盘IO

对于基础硬件资源的性能测试,刚工作时,我也是人云亦云,不知道为什么要这么去做。在后面的工作中,逐渐意识到了性能压测,又或称其为基准测试的重要性。

MySQL手记1 — 初识数据库系统

拿服务器的选型来说,磁盘这块的测试,需要知道为什么选择SSD?做RAID的目的是什么?都是前期测试的结果

Tips: MySQL8.0版本DEFAULT_GENERATED的问题

MySQL8.0, DEFAULT_GENERATED for columns that have an expression default value.

Tips: mysqldump8.0导出MySQL5.7版本的数据时报错

MySQL8.0版本中,mysqldump加入了参数 --column-statistics,默认为打开,在导出时,需要在information_schema.column_statistics表中检查导出表的信息。

MySQL刷脏让应用抖了一下?

对于MySQL的刷脏,应当调整数据库的相关配置,使该过程平滑进行,不要影响到业务。在本片文章中,介绍了排查的思路,若在日志中看到刷脏耗时较长,且导致了慢查,可参考本文的思路进行排查。