(可选)收集数据库故障信息
介绍不同数据库故障信息的收集方法,包括Oracle、SQL Server和DB2。
收集Oracle故障信息
- 收集Oracle的alert日志文件。
将Oracle启动到nomount或者mount状态,执行show parameter background_dump_dest命令;在查询得到的路径下获取alert日志文件。
- Oracle 10g:在“$ORACLE_BASE/admin/dbname/bdump”路径下获取alert日志文件。
- Oracle 11g:在“$ORACLE_BASE/diag/rdbms/dbname/inst_name/trace”路径下获取alert日志文件。
- 可选: 收集Oracle ASM的alert日志文件。
- Oracle 10g:Oracle用户下,在“$ORACLE_BASE/admin/+asm/bdump”路径下获取alert日志文件。
- Oracle 11gR1:Oracle用户下,在“$ORACLE_BASE/diag/asm/+asm/trace”路径下获取alert日志文件。
- Oracle 11gR2:grid用户下,在“$ORACLE_BASE/diag/asm/+asm/trace”路径下获取alert日志文件。
- 可选: 在ASM或者数据库实例下执行select group_number,type from v$asm_diskgroup命令收集ASM diskgroup信息。
收集SQL Server故障处理信息
- 收集SQL Server数据库日志库文件。
- SQL Server 2005:选择“管理 > SQL Server日志”。
- SQL Server 2008:在“管理 > SQL Server日志”路径下,右键选择“视图 > SQL Server和windows日志”。
- 执行use master select name,physical_name,size from sys.master_files命令查看数据库文件位置和大小。
收集DB2故障信息
- 执行db2support outpath -d db_name -c命令输出结果是一个名为“db2support.zip”的压缩包。
其中outpath为结果保存的路径,db_name为数据库名称。
收集Oracle Clusterware故障信息
- 收集Oracle Clusterware相关的日志文件。
以root用户执行$CRS_HOME/bin/diagcollection.sh命令,收集生成的4*.gz文件。
- 收集Clusterware的进程及资源状态。
- Oracle 11gR2:
- 以root用户执行$CRS_HOME/bin/crsctl stat res -t -init >> /home/cluster_info.txt命令收集Clusterware进程的启动情况。
- 以root用户执行$CRS_HOME/bin/crsctl stat res -t >> /home/cluster_info.txt命令收集Clusterware资源的启动情况。
- Oracle 10g或11gR1:
- 以root用户执行ps -ef|grep d.bin >> /home/cluster_info.txt命令收集Clusterware进程的信息。
- 以root用户执行$CRS_HOME/bin/crs_stat -t -v >> /home/cluster_info.txt命令收集Clusterware资源的状态信息。
- Oracle 11gR2: