MySQL¶
关系型数据库,日常重点是数据模型、索引、备份恢复、复制和慢查询。
日常检查¶
-- 版本、连接与运行状态
SELECT VERSION();
SHOW PROCESSLIST;
SHOW GLOBAL STATUS LIKE 'Threads_connected';
SHOW GLOBAL STATUS LIKE 'Max_used_connections';
-- 当前库表与索引
SHOW DATABASES;
USE app;
SHOW CREATE TABLE users;
SHOW INDEX FROM users;
索引与慢查询¶
- 为高频过滤、关联、排序字段设计索引,但避免无目的的重复索引。
- 关注全表扫描、返回行数、临时表和 filesort;索引需与实际查询条件匹配。
- 开启并定期分析慢查询日志,结合业务峰值和执行计划优化。
备份、复制与恢复¶
- 逻辑备份适合小中型数据、跨版本迁移;物理备份适合大库和更快恢复。
- 备份必须包含恢复演练:能恢复不等于能在目标时间内恢复。
- 复制主要用于读扩展和高可用;注意复制延迟、GTID/位点、故障切换与应用连接方式。
- 不在生产库上直接执行未经评估的大范围
DELETE、ALTER TABLE或全表更新。
排障入口¶
数据容量与写入扩展见 分库分表,从订单例子理解分片键、请求路由、跨库事务和迁移。
连接数、慢 SQL、锁等待、磁盘空间、复制延迟和 InnoDB 指标是优先检查项。变更前先记录版本、参数、现象和回滚路径。