所在位置:首页>最新资讯>《Oracle数据库极简诊断分析手册》,简到可以背诵

《Oracle数据库极简诊断分析手册》,简到可以背诵

来源:作者:gaoxuan发表于:2019-09-06点击:

作者:英方华东三区技术经理 吕鹏飞
 
*请熟读并背诵全文。
 
1、安装数据库时容易犯的错误
 
安装之前没有检查操作系统错误
安装过程中网络异常终止
没有按照官方文档安装数据库
 
没有检查操作系统环境
操作系统包和补丁没有打全
环境变量设置错误
介质安装错误
共享存储设置错误
操作系统没有配置或者开启异步I/O

 
 

 
2、无法启动安装界面的解决方法
在root用户下执行xclock命令,观察是否能在服务器的桌面上顺利启动小时钟
检查DISPLAY环境变量的设置
检查xmanager是否跨网段连接主机
检查xmanager服务状态
检查/etc/hosts配置文件
 
如仍无法启动图形界面,可从其他主机直接拷贝Oracle软件至目标主机,选择静默安装数据库软件
 
 

 
3、安装数据库的最佳实践
 
发生错误时检查数据库的安装日志和操作系统日志
Linux系统下,安装Oracle之前关闭SELinux特性
AIX系统下,在$ORACLE_HOME所在的文件系统中不能使用cio特性
安装CRS前,建议使用dd命令格式化磁盘头或者lv头
安装CRS时,建议使用sh -x root.sh调试模式执行root.sh
用netca配置监听出错时,建议检查/etc/hosts等域名解析配置文件
如果安装界面异常退出,则建议检查安装介质是否损坏
安装完成之后,部署操作系统资源监控工具,如OSW
 

 
4、检查是否由网络故障引起
 
客户端使用sqlplus命令尝试连接
客户端使用tnsping命令观察监听状态
客户端使用traceroute命令观察路由
客户端使用ping命令观察网络
在客户端传输一个大文件至服务端评估网络带宽
在客户端sqlnet.ora中配置跟踪参数
检查操作系统日志,检查网卡、交换机、防火墙等硬件
 

 
5、检查是否由主机资源引起
 
观察主机CPU、内存、I/O消耗情况
AIX系统下,检查系统内核参数maxuproc是否达到阀值
检查主机空间使用率
服务器端尝试使用sqlplus登录数据库,
使用strace命令进行登录跟踪
 

 
6、检查是否由数据库故障引起
 
检查Oracle警告日志和操作系统日志
检查Oracle进程数是否达到了参数processes的阀值
检查归档空间的使用率
查询V$SESSION_WAIT视图
sqlnet.ora配置文件中设置跟踪参数,跟踪会话连接过程
检查数据库是否做了登录访问控制
检查数据库级别是否开启了会话跟踪
查数据库是否存在大量DATABASELINK短连接
如果MTS模式,检查larger pool配置
 

 
7、数据库HANG类故障
 
主机资源(主要是CPU、内存、I/O资源)达到瓶颈
进程之间的死锁
所有在线日志均为ACTIVE状态,无法归档
数据库资源争用,如LATCH争用
SGA内存组件之间内存抖动
人为发起数据库SUSPEND命令
 

 
8、数据库全局性HANG的处理过程
sqlplus -prelim "/as sysdba"
SQL> oradebug -g all hanganalyze 3
SQL> oradebug -g all dump systemstate266
 

 

 
9、数据库局部性HANG处理过程
假设需要对9834号进程做跟踪,其语法如下所示:
 
 

 
10、性能类故障的处理思路
 
了解业务系统的拓扑架构,了解业务最近是否发生了变动
登录到主机,查看主机的资源消耗情况
登录到数据库,查看活动状态的会话数
查询V$SESSION_WAIT视图
采样AWR/STATSPACK报告
检查其他系统组件是否碰到了性能瓶颈
 

 
11、数据误操作类故障的处理思路
 
如果数据库有备份,则评估恢复时间和数据丢失率
如果表被误删除(DROP),则查看recyclebin
使用DUL等挖掘工具恢复误删除(DROP)的数据
如果数据被误删除(DELETE),则使用表闪回版本查询特性
使用logmnr工具挖掘归档日志恢复误操作(DML)的数据
 
 
 

 
12、数据库对象坏块的处理思路
使用dbv、RMAN等命令校验数据库的坏块
索引出现坏块,删除并重建索引
表出现坏块,则设置10231事件跳过坏块
使用bbed工具尝试修复坏块
 

 
13、SYSTEM/UNDO表空间损坏的处理思路
检查数据库的警告日志
物理备份整个数据库
用dbv工具校验SYSTEM/UNDO表空间
关闭监听,使得外部应用不会立刻连接至数据库
进行故障处理,如使用隐含参数、event、bbed等工具
 

 
14、数据库在线日志文件损坏的处理思路
对于INACTIVE状态的在线日志,使用clear进行重建
ACTIVE或者CURRENT状态的在线日志,则设置隐含参数_allow_resetlogs_corruption
数据库打开过程中出现ORA-00600[2662]错误,则使用10015事件或者隐含参数_minimum_giga_scn递增全库SCN
注意:千万不要在数据库运行时,关闭主机或者存储
 

 
15、控制文件损坏的处理思路
观察数据库是否能到MOUNT阶段
使用操作系统命令strings命令提取控制文件内容
按照重建控制文件的格式以NORESETLOGS选项重建控制文件

相关文章

品牌案例

会员登录
  • 请输入用户名

    请输入用户名

  • 请输入密码

    请输入密码

  • 请输入验证码

    请输入验证码

  • 记住用户名