您现在的位置是:课程
【赵强老师】第一个Oracle的手工备份和恢复
2023-06-30 21:24课程 人已围观
为什么需要数据备份
Oracle中故障类型分为以下4种:
-
语句故障
执行SQL语句过程发生的逻辑故障可导致语句故障。如果用户编写的SQL语句无效,就会发生语句故障。Oracle可自我修复语句故障,撤销语句产生的而印象,并将控制权交给应用程序。
-
用户进程故障
当用户程序出错而无法访问Oracle数据库时,就会发生用户进程故障。用户进程故障只会导致当前用户无法操作数据库,但不会印象其他用户进程,当用户进程出现故障时,进程监控程序(PMON)会自动执行进程恢复。
-
实例故障
当Oracle数据库实例由于硬件或软件问题而无法继续运行时,就会发生实例故障。硬件问题包括意外断电,而然间问题可能是服务器操作系统崩溃。如果发现实例故障,Oracle会自动完成实例修复。实例修复将数据库恢复到与故障之前的事务一致状态,Oracle会自动回滚未提交的数据。
-
介质故障
介质故障是当一个数据库文件或者磁盘不能读或者不能写时出现的故障。
备份
备份就是把创建一个数据库副本到磁盘。从不同角度分类如下:
-
从物理角度与逻辑角度分类
物理备份:对数据库操作系统的物理文件(如数据文件、控制文件和日志文件等)的备份。物理备份又可分为脱机备份(冷备份)和联机备份(热备份),前者是在关闭数据库的时候进行的,后者对运行在归档日志方式的数据库进行备份。
逻辑备份:对数据库逻辑组件(如表和存储过程等数据对象)的备份。
-
从数据库的备份策略角度分类
完全备份:每次对数据进行完整备份。
增量备份:值有那些在上次完全备份或者增量备份后备修改的文件才会被备份。优点是备份数据量小,需要的时间短,缺点是恢复的时候需要依赖之前的备份记录,出问题的风险较大。例如:如果在星期一进行完全备份,在星期二至星期五进行增量备份。如果星期五数据被破坏了,则数据恢复需要星期一的完全备份和从星期二至星期五的所有增量备份。
差异备份:备份那些从上次完全备份之后被修改过得文件。因此从差异备份中恢复数据的时间长短,因此只需要两份数据(最后一次完全备份和最后一次差异备份),缺点是每次备份的时间较长。例如:如果在星期一进行完全备份,在星期二到星期五进行了差异备份,如果星期五数据被破坏了,则数据恢复只需要星期的完全备份和星期四的差量备份。
恢复
恢复就是发生故障后,利用已备份的数据文件或控制文件,重新建立一个完整的数据库。
恢复分为两种类型:
-
实例恢复:当Oracle实例出现失败后,Oracle自动进行的恢复
-
介质恢复:当存放数据库的介质出现故障时所做的恢复。介质恢复又分为完全恢复和不完全恢复。
恢复模式分为两种类型:
-
完全恢复:将数据库恢复到数据库失败时的状态。
-
不完全恢复:将数据库恢复到数据库失败前的某一时刻的状态。