一次 Oracle RAC 节点反复重启故障复盘:从 alert 日志确认数据库不是重启源头,从 Linux 审计排除人工 reboot,从 kdump 和 vmcore-dmesg 定位 Fatal Machine Check,再结合 BMC/XCC 事件确认 CPU1/Socket1 硬件故障。
一次达梦数据库 TRUNCATE / DROP 数据文件残留实验:从 SQL 层面、数据字典、数据文件物理扫描和 10002 trace 多个角度验证数据是否真的被清理,并使用 dmdul 离线抽取工具成功恢复 TRUNCATE 后的测试数据。
一次 Oracle SQL 执行计划异常故障复盘:多个 w3wp.exe 会话集中执行 SQL_ID 4ja6bgs1su89c,child 21 选择低选择性 DEALID 索引,导致约 29.7 亿逻辑读、CPU 接近 100%、latch free 与 cache buffers chains 竞争。最终通过固定好计划、清理坏游标、创建复合索引并收集统计信息恢复稳定。
一篇 Oracle ADG 巡检与故障判断 SOP,系统整理备库侧与主库侧常用 SQL,包含 v$database、v$managed_standby、v$dataguard_stats、v$archive_gap、v$archived_log、v$archive_dest_status 等视图的检查方法,并给出 archive gap、MRP 未启动、主库传输异常、应用慢和 RMAN 增量推进备库的处理流程。
一篇数据库动态数据脱敏实战文档,基于 Oracle DBMS_REDACT 与达梦 DM8 DBMS_RLS 实现身份证号、手机号、工资字段脱敏,覆盖策略创建、字段绑定、普通用户验证、管理员绕过、策略查看和 Oracle / 达梦机制对比。
一次 Oracle 18c 生产恢复实战:业务视图 WMPROD.V_YN_GSP_NBR 被误修改,不采用整库回退,而是使用 RMAN Duplicate 创建辅助库 WMSAUX,恢复到误修改前时间点,提取旧视图定义后精准恢复生产视图。
一篇 Linux OS 层性能排障手册,系统梳理 uptime、top、vmstat、mpstat、pidstat、iostat、iotop、free、sar、ss、tcpdump 等命令的用法、关键参数、重点字段和生产判断标准。
一次 Oracle 18c 生产故障复盘:WMS 数据库出现 ORA-03135 和 ORA-3136,Hang Manager 指向 MMAN,v$sga_resize_ops 显示 shared pool shrink,sar 证明故障窗口存在明显 swap-in,最终建议固定 shared_pool_size 下限并监控 SGA resize。
通过操作系统 PID、v$session、dba_scheduler_running_jobs、dbms_xplan 等手段,定位 Oracle CPU 高的根因,并给出 SQL 和索引优化思路。
当 ORA-01187 / ORA-01110 指向 Oracle TEMP tempfile 时,处理重点是创建 TEMP_NEW、切换默认临时表空间、释放旧 TEMP 会话、删除旧 TEMP,并最终将 TEMP_NEW 改回 TEMP。