--=============================
-- Oracle 常见故障及日常规划
--=============================
对任何数据库系统而言,对显而易见的故障,应当避免发生本文列出了Oracle常见的故障并给出了解决方案,同时列出了一些日常规划。
一、数据库高可用性的几个目标
MTBF(Mean-Time-Between-Failures)
平均失败时间,即数据库出现失败的频繁度,应尽可能增大该值
应对措施
RAC集群技术:位于多台计算机上的多个实例打开一个物理数据库,降低因一个或多实例失败导致的风险
Streams:利用高级队列技术,通过解析归档日志,将归档日志解析成DDL及DML语句,从而实现数据库之间的同步。相当于
SQL server中的复制技术,可以在对主系统没有任何压力的情况下,实现对数据库对象级甚至整个数据库的同步。
Data Guard:一个主数据库,多个备用数据库,备用数据库是主数据库在事务上一致的副本,可是在主数据宕机的情况下由
备用服务器来继续提供服务。相当于SQL server中的数据库镜像功能。
MTTR(Mean-Time-To-Recover)
平均恢复时间,数据失败后出现的停机时间,应尽可能减小该值
数据损失最小化
在减少MTTR的同时,应尽可能的减少数据的损失
二、常见的故障类别
1.语句级故障,通常为DML ,DQL,DCL,DDL等等
无效数据 -->使用数据符合相关约束,满足值域的数据
缺少权限 -->给予用户所需的权限
空间分配问题 -->使用alter session enable resumable,增加用户配额,增加表空间大小
应用程序逻辑错误 -->修正逻辑错误
2.用户进程故障
用户非登出的异常退出
用户会话异常终止
程序错误导致会话结束
对于上述错误,实例后台进程PMON会自动回滚未提交的事务,并释放相关锁资源
3.网络故障
侦听器故障 -->配置一个备份的侦听器,connect-time故障转移
网络接口卡故障 -->使用多个网络接口卡
网络连接故障(路由) -->配置一个备份的网络连接
4.用户错误
用户意外删除或修改数据 -->回滚或使用闪回查询来恢复
用户删除表 -->从回收站闪回删除
5.介质故障
磁盘故障
磁盘控制器故障
删除或损坏数据文件
可能的解决方案,使用联机事务日志从备份恢复受影响的文件或恢复数据文件到新的物理位置
6.实例故障
电源负载故障
硬件故障
后台进程失败
异常关闭数据库
解决方案,使用startup 重新启动实例。实例实现自动恢复,根据联机日志文件前滚提交的事务,回滚未提交的事务
查看告警日志、跟踪日志等找出出现故障的原因
三、实例恢复相关的后台进程
1.检查点进程(CKPT)
检查点将当前日志文件的信息更新到数据文件头部,控制文件等
检查点的目的是同步日志文件与数据文件的不同步,从而可以确定实例恢复从最近的检查点开始
检查点的触发条件
在日志切换的时候
数据库用immediate ,transaction ,normal选项shutdown数据库的时候
根据初始话文件LOG_CHECKPOINT_INTERVAL、LOG_CHECKPOINT_TIMEOUT、FAST_START_IO_TARGET 的设置的数值来确定
用户受手动触发
检查点存在的理由
确保在内存中已修改的数据定期写入到数据文件,防止系统或数据库故障引起数据的丢失
减少实例恢复所需的时间,从最近的检查点到故障时即为所需要进行的恢复
在数据库关闭时,确保所有提交的数据写入到数据文件
检查点信息包括
检查点位置(位于联机日志文件)
系统改变号(SCN)
联机日志文件中的位置
日志信息等
注:检查点进程不会写入数据块磁盘,也不会写任何日志到联机日志文件
2.联机日志文件及日志写入进程(LGWR)
联机日志文件记录数据库的变化情况
应当被多功复用以避免丢失
日志写入进程
在commit时触发
当日志缓冲/3满时
每秒触发
在DBWn之前完成
3.归档进程(ARCn)
归档进程是一个可选的后台进程
当数据库处于归档模式下,将自动归档联机日志文件
数据库所有做出的变化将被完整记录
归档进程在每次发生日志切换时被初始化,在联机日志文件被重新使用前自动对联机日志文件实现归档
建议开启归档模式
4.关于详细的后台进程描述等,请参考:Oracle实例和Oracle数据库(Oracle体系结构)
四、三大文件的规划
1.多路复用控制文件
至少使用个以上的控制文件
分散放开到不同的磁盘
控制文件副本应当位于不同的磁盘控制器
建议使用RMAN定期自动备份
2.多路复用重做日志文件
每一个日志组至少两个成员
每一个日志成员应当位于不同的磁盘
每一个日志成员应当位于不同的磁盘控制器
组内成员被同时写,带来较大的I/O,应置于高速磁盘
3.归档日志
应将生产数据库切换到归档模式
按合理的归档日志命名
多于一个归档路径
五、实例恢复
请参照:Oracle 实例恢复
六、更多
Oracle 参数文件
SQL基础-->层次化查询(START BY ... CONNECT BY PRIOR)
Oracle 用户、对象权限、系统权限
Oracle 角色、配置文件
SQL 基础--> 集合运算(UNION 与UNION ALL)
分享到:
相关推荐
Oracle数据库在日常运行中可能会遇到各种故障,这些故障可能会影响到数据库的正常运行、性能或安全性。以下是一些常见的Oracle数据库故障及其原因与解决方案: 一、数据库挂起故障 1. ARCHIVE挂起:当归档日志过程...
### Oracle 11g 数据库常见故障处理 #### 一、概述 Oracle 11g 数据库作为一款广泛使用的数据库管理系统,在实际应用过程中难免会遇到各种各样的问题。本文档旨在帮助用户理解并解决Oracle 11g 数据库中常见的故障...
oracle11g常见故障总结,可以做日常培训使用: Oracle 11g数据库常见故障及处理 安装和配置类问题 实例管理类问题 数据管理类管理 数据库恢复类问题 管理工具类问题 ORA-00600介绍和案例分析 ORA-07445介绍和案例...
以下是一些关于Oracle常见问题的详细解答: 1. Oracle安装完成后,系统中预设了一些默认的用户名和密码,例如: - internal/oracle - sys/change_on_install - system/manager - scott/tiger - sysman/oem_...
Oracle数据库的日常运维及应急故障处理是数据库管理员(DBA)的重要职责,它涵盖了数据库的健康监控、性能优化、故障诊断和处理等多个方面。本手册旨在为Oracle DBA提供一个全面的参考指南,帮助他们快速有效地应对...
Oracle DBA的日常管理工作涉及多个方面,包括但不限于性能监控、故障排查、数据备份与恢复、安全性管理以及数据库优化。 一、性能监控 Oracle DBA需要定期检查数据库性能,这通常通过SQL查询或使用Oracle自带的管理...
本文将基于"Oracle常见脚本精华.rar"这个压缩包文件中的内容,详细讲解Oracle数据库的一些重要脚本及其应用场景。 首先,Oracle常用脚本1.doc可能包含的是数据库的创建、初始化和管理脚本。在Oracle中,创建一个...
- 中级DBA:除了基本的维护任务外,还需要参与性能调优、故障排查等工作。 - 高级DBA:负责整个数据库系统的架构设计、性能优化以及团队管理等高级任务。 通过以上知识点的学习,可以快速提升Oracle DBA的专业技能...
- **故障排除**: 提供常见问题及其解决方法,帮助用户快速定位并解决问题。 ### 三、版权及许可信息 该手册明确指出包含的所有程序均受到版权保护,并且受到许可证协议的限制,其中包括但不限于反向工程、拆解或反...
总之,“Oracle常见问题的错误码大全”是每个Oracle DBA和开发人员必备的工具,它可以帮助我们迅速定位问题,提高故障排除效率。通过深入学习和实践,我们可以更好地管理和维护Oracle数据库,确保系统的稳定运行。
Oracle数据库的日常运维操作是数据库管理员(DBA)的核心工作之一,其中数据库的启动和关闭是基础但至关重要的环节。以下是对Oracle数据库启动和关闭的详细解释: Oracle数据库在启动和关闭过程中涉及到多个状态和...
本手册《ORACLE8故障解决手册》是一部针对这个特定版本的实用指南,旨在帮助系统管理员和DBA们解决在日常操作中可能遇到的问题。由于这本书"很少见",它可能包含了一些不常见但关键的故障排查步骤和技术,对于那些还...
根据提供的文件信息,内容涵盖Oracle数据库的日常维护操作以及相关命令的总结,以下是详细的知识点: 1. 表空间 表空间是数据库存储逻辑结构的基本单元,用于组织和管理数据库对象。操作包括创建表空间、创建临时表...
Oracle日常维护手册是一份至关重要的资源,它涵盖了数据库管理员(DBA)在管理Oracle数据库系统时所需的日常操作和技巧。Oracle数据库是全球广泛使用的大型企业级数据库管理系统,因此理解和掌握其维护至关重要。...
### Oracle常见基本概念和术语详解 #### 一、Oracle数据库系统概述 Oracle数据库系统作为一款高度复杂的软件系统,其内部架构及其运作机制的理解对于开发高质量的应用软件系统以及管理复杂的应用环境至关重要。...
在Linux环境中,对Oracle数据库进行日常维护是确保其稳定运行的关键任务。以下是一些常用的Linux命令,用于检查和管理Oracle数据库实例: 1. **检查Oracle进程**: 使用`ps -ef | grep "ora_" | grep -v grep`命令...
这份"Oracle日常应用相关技术文档"集合了11个重要的技术文档,旨在帮助用户解决Oracle使用过程中的常见问题。以下将针对Oracle的一些关键知识点进行详细阐述: 1. **SQL语言基础**:Oracle数据库的核心是SQL,用于...
二、常见故障类型 1. 数据库连接问题:可能由于网络问题、认证错误或监听器配置不正确导致。 2. 表空间问题:包括表空间满、数据文件丢失或损坏。 3. SQL查询性能下降:可能是索引失效、统计信息过时或者查询优化器...
文档最后提到了Oracle数据库的日常维护和故障处理,以及备份和常见问题的处理。这些通常包括监控数据库性能、定期备份数据、设置合理的备份策略和恢复计划,以及在遇到故障时进行排查和解决。 由于文档中没有给出...