主流数据库运维故障排查卡片式速查表与视觉图谱

主流数据库运维故障排查卡片式速查表与视觉图谱

本文件将主文档内容转化为模块化卡片结构,并补充数据库结构图、排查路径图、锁机制对比等视觉图谱,以便在演示、教学或现场排障中快速引用。


📌 故障卡片速查:连接失败

数据库 检查要点 工具/命令 提示
MySQL mysqld 是否运行;bind-address 设置;权限表 (user@host) systemctl status mysqlSHOW GRANTS localhost 默认走 socket
PostgreSQL listen_addresses, pg_hba.conf 配置 `ps aux grep postgrespg_isready` IP/MASK 需匹配,注意 auth 方法
SQL Server TCP/IP 是否启用;实例名正确;防火墙 SQL Server 配置管理器;telnet 默认端口 1433,命名实例需格式
Oracle Listener 启动;tnsnames.ora, sqlnet.ora 正确 lsnrctl statustnsping ORA-12514 多见于服务名不一致

口诀: 连-端-网-权


📌 慢查询分析卡片

数据库 常用手段 推荐工具/命令 优化重点
MySQL 开启慢查询日志;EXPLAIN 分析 EXPLAIN ANALYZE;Performance Schema 避免全表扫,控制子查询
PostgreSQL auto_explain 捕捉执行计划 EXPLAIN (ANALYZE, BUFFERS) 数据类型匹配与统计信息准确
SQL Server 使用执行计划与 DMV sys.dm_exec_query_stats + query_plan 避免隐式转换、参数嗅探
Oracle SQL Trace + TKPROF 分析 DBMS_XPLAN.DISPLAY_CURSOR;SQL Profile 并行度、hint、统计信息

口诀: 慢-查-索-优


📌 锁等待排查卡片

数据库 查看锁信息方法 典型排查视图/命令 优化技巧
MySQL INNODB STATUS; Performance Schema SHOW ENGINE INNODB STATUS\G 避免 gap lock,缩事务
PostgreSQL pg_locks, pg_blocking_pids() SELECT * FROM pg_locks JOIN pg_stat_activity 长查询+长事务要拆分
SQL Server dm_tran_locks, dm_os_waiting_tasks sys.dm_exec_requests;Profiler 使用行版隔离减少冲突
Oracle V$LOCK, V$SESSION, LOCKED_OBJECT SELECT * FROM dba_blockers/dba_waiters alert 日志含死锁栈信息

口诀: 事-锁-索-释


📌 主从延迟诊断卡片

数据库 查看同步状态命令 延迟字段 优化建议
MySQL SHOW SLAVE STATUS\G Seconds_Behind_Master 多线程复制;避免大事务
PostgreSQL pg_stat_replication, replay_lag flush_lag, replay_lag 热备反馈;异步切同步看 sync_state
SQL Server dm_hadr_database_replica_states redo_queue_size 分发器性能/日志网络瓶颈
Oracle V$DATAGUARD_STATS, V$ARCHIVE_DEST APPLY LAG 增带宽/并发;定期观测归档堆积

口诀: 主-网-从-延


📌 存储瓶颈排查卡片

数据库 缓存相关参数 I/O 检查方法/指标 典型优化措施
MySQL innodb_buffer_pool_size iostatSHOW ENGINE INNODB STATUS 加大 buffer、调整 flush 策略
PostgreSQL shared_buffers, work_mem pg_stat_io, blks_hit/blks_read 比率 VACUUM/避免顺扫
SQL Server Buffer Pool, TempDB 使用率 dm_io_virtual_file_stats, PerfMon 拆 TempDB;优化日志写
Oracle DB_CACHE_SIZE, LOG_BUFFER AWR、V$FILESTAT, V$SYSSTAT 中 I/O wait ASM + IOPS 策略调优

口诀: 存-IO-缓-满


🔍 可视化图谱(建议配合展示使用)

✅ 锁类型与死锁图谱(跨数据库对比)

复制代码
MySQL (InnoDB): Record Lock, Gap Lock, Next-Key Lock
PostgreSQL: Row Exclusive, Share, Access Exclusive
SQL Server: RID, PAGE, KEY, TABLE, INTENT 锁
Oracle: TX (行锁), TM (表锁)

🧠 死锁检测原则:等待图 + 回滚成本最低事务优先


✅ InnoDB 存储架构图(简化示意)

复制代码
+-------------------------+
|      Buffer Pool        |
| +---------------------+ |
| | Page Cache / Dirty | |
| | Undo / Redo         | |
+-------------------------+
        ↓ Flush
+-------------------------+
|     Tablespace (.ibd)   |
|     Doublewrite Buffer  |
+-------------------------+

✅ 主从复制流程图(通用模型)

复制代码
[主库 Binlog] → [IO Thread] → [Relay Log (从)] → [SQL Thread 执行]

🛠 延迟常见位置:大事务 → Relay 写慢 → SQL 应用慢


相关推荐
石一峰69941 分钟前
深入理解 Linux 中断三层机制与 1-Wire 时序锁原理
linux·运维·服务器
运维老郭1 小时前
PostgreSQL编译安装实战
运维·postgresql
无限码农2 小时前
Linux上通过cmake编译uchardet
linux·运维·服务器
白露与泡影2 小时前
Redis 缓存实战:雪崩、穿透、击穿一次讲透
数据库·redis·缓存
运维大师3 小时前
【Linux运维极简教程】06-网络配置与管理
linux·运维
赵渝强老师3 小时前
【赵渝强老师】使用Oracle可传输的表空间迁移数据
数据库·oracle
007张三丰3 小时前
软件测试专栏(15/20):REST Assured接口自动化框架实战
运维·自动化·jenkins·接口自动化·rest·assured
ACP广源盛139246256733 小时前
IX8024@ACP# 搭配此芯 AI 服务器 + 爱芯元智产品完整方案
大数据·运维·服务器·人工智能·分布式·嵌入式硬件
IpdataCloud4 小时前
跨区服玩家延迟高怎么办?用IP离线库自动分配到最近服务器
数据库·tcp/ip·github·php·ip
wuqingshun3141595 小时前
MYSQL默认的事务隔离级别是什么?为什么选择这个级别?
数据库·mysql