Oracle备份与恢复—概念
发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,备份与恢复[TOC]1.什么是备份与恢复? 备份与恢复存在的意义只有一个就是保护数据库(保护数据还有本身),防止由于设备故障或者人为误操作而导致数据库损坏或数据的丢失。即便无法找回已经丢失的数据也
千家信息网最后更新 2025年01月20日Oracle备份与恢复—概念
备份与恢复
[TOC]1.什么是备份与恢复?
备份与恢复存在的意义只有一个就是保护数据库(保护数据还有本身),防止由于设备故障或者人为误操作而导致数据库损坏或数据的丢失。即便无法找回已经丢失的数据也可以根据备份信息重建丢失的数据。在某种需求下备份和恢复操作也是一种数据迁移的形式。
2.备份的分类:
按照备份形式的不同可以将备份分为物理备份和逻辑备份。物理备份根据数据库的状态又可以分为冷备和热备。
物理备份:物理备份就是将数据库的物理文件拷贝到别的地方来保存数据文件的方式。
- 冷备份:这种备份的首要要求就是需要数据库在关闭的情况下进行备份,也称为脱机备份,因为数据库需要关闭所以这种方法在生产环境用的比较少。要注意的是需要数据库 一致性关库才可以。这种方式可以进行完整备份,包括数据文件,控制文件以及日志文件。
- 热备份:与冷备相对,可以在数据库启动的状态下进行备份。在生产环境中这样状态产生的备份往往与数据库实际数据是不一致的,因为刚刚备份的数据块正在被修改所以导致的不一致。为了保证备份最终是一致的,需要使用日志作为恢复的补充。所以想要进行热备份,归档是一定要打开的也因此比较占空间。
逻辑备份:逻辑备份只针对数据库内的数据,通过数据库导入导出工具来完成。是物理备份的一种补充形式。
3.备份的级别:
- full backup:完全备份,针对某一个表空间或数据文件等,把表空间或数据库里面的数据全备份一次。
- incremental backup:增量备份,需要在完全备份的基础上进行,备份变化的数据。可分为differential incremental backup差异增量备份(从上一次备份开始到现在发生的变化)和Cumulative incremental backup累计增量备份(从上一次全备进行比较备份的变化)
level 0 -> 全备; level 1 -> 差异增量备份 level 1c -> 累计增量备份
4.完全恢复和不完全恢复:
- 完全恢复:可以利用备份文件和日志文件,将数据库的信息恢复到最新的状态,可能会利用到归档日志和在线重做日志,将系统恢复到崩溃前的最新状态。可以通过alter database open将数据库打开。这个时候提交的事务数据不会有任何丢失。未提交的事务进行回滚。
- 不完全恢复:因为发生了数据库的数据操作错误,希望把数据库恢复到发生错误之前。系统日志不完整,打开数据库需要alter database open resetlogs,并且在启动后进行全库备份。
5.SCN:
5.1 定义:
System Change Numbers (SCNs)&System Commit Numbers。系统改变号和系统提交号。SCN是Oracle数据库内部所使用的逻辑的时间戳。SCN的产生,系统产生一个新的SCN是根据当时的时间戳timestamp转换而来,每当需要产生一个最新的SCN到redo记录中时,系统都会获取当时的timestamp将其转换成数字作为SCN。
5.2 特点:
SCN本身也是一种时间,它是从建库开始就单调递增的序列,一次性最大可以增加32000个。SCN号是有上限的,当SCN号被使用完,数据库便不能够运行,但是几百年内是不会用完的。SCN是一个很重要的机制,在数据恢复,DG,RAC节点间同步等各个功能中起着重要的作用。
5.3 SCN种类:
- 数据库当前的SCN:
SYS@proe>select current_scn from v$database;CURRENT_SCN----------- 2128297
- 数据库检查点scn(系统scn),这个scn来自于控制文件,用来标识当前数据库的数据更新信息,表示数据库的更新行为。
SYS@proe>select checkpoint_change#,current_scn from v$database;CHECKPOINT_CHANGE# CURRENT_SCN------------------ ----------- 2127934 2128360
- 数据文件检查点SCN,来源于控制文件标识了每一个文件是什么时候同步的。
SYS@proe>select file#,checkpoint_change# from v$datafile order by 1; FILE# CHECKPOINT_CHANGE#---------- ------------------ 1 2127934 2 2127934 3 2127934 4 2127934 5 2127934 6 2127934 7 17285687 rows selected.
- 数据文件头部检查点。
SYS@proe>select file#,checkpoint_change# from v$datafile_header; FILE# CHECKPOINT_CHANGE#---------- ------------------ 1 2127934 2 2127934 3 2127934 4 2127934 5 2127934 6 2127934 7 17285687 rows selected.#如果出现数据文件头部为0的情况则说明数据文件已经离线,没有读取这个数据文件。
- 数据文件的关闭SCN(结束SCN)。
SYS@proe>select file#,checkpoint_change#,last_change# from v$datafile; FILE# CHECKPOINT_CHANGE# LAST_CHANGE#---------- ------------------ ------------ 1 2127934 (null) 2 2127934 (null) 3 2127934 (null) 4 2127934 (null) 5 2127934 (null) 6 2127934 (null) 7 1728568 17285687 rows selected.注意:正在运行的文件是没有last_change#的,只有readonly,offline才会有。以上两个值在一致性关闭后数值相同才正常。
6.SCN与TIME的相互转换函数
- scn转时间戳:
SYS@proe>select scn_to_timestamp(2127934) from dual;SCN_TO_TIMESTAMP(2127934)---------------------------------------------------------------------------15-JUL-20 07.14.57.000000000 PM
- 时间戳转scn:
SYS@proe>select timestamp_to_scn(to_timestamp('2020-07-13 07:15:24','yyyy-mm-dd hh34:mi:ss')) from dual;TIMESTAMP_TO_SCN(TO_TIMESTAMP('2020-07-1307:15:24','YYYY-MM-DDHH24:MI:SS'))--------------------------------------------------------------------------- 1993469
7.关于restore和recover
- restore:还原,类似于linux中cp命令,将备份拷贝到目标位置。
- recover:修复,在restore后,指运用所有的重做日志文件,将数据库恢复到崩溃之前的状态,或者运用部分重做日志文件将数据库恢复到指定时间点,做不完全恢复。
数据
备份
数据库
文件
日志
系统
时间
物理
状态
一致
增量
逻辑
信息
就是
形式
检查点
空间
变化
控制
检查
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
高科技跟互联网的关系
重庆垫江网络生鲜软件开发
郑州网络安全周吉祥物
数据库设计的一般特点
简单软件开发步骤
数据库查询数据实际大小
obc数据库设置方法
肥乡区企业网络推广需要服务器吗
德国thc网络安全
搭建求生之路服务器
海南壹滴水互联网科技有限公司
关与网络安全手抄报
计算机网络技术教学进度计划
靠谱的珠宝软件开发公司
网络安全的惨痛案例
ccd视觉检测软件开发
数据库性别的数据类型
中船重工702研究所软件开发
深圳智能炒币机器人软件开发价格
数据库不能开发怎么办
虚拟钢琴软件开发流程
杭州网盘互联网科技有限公司
psvvita工具箱更新数据库
2021网络技术单招分数线
杭州乒乓球软件开发
数据库否是什么意思
违法软件开发者
vivo软件开发工资
数据库辅助审计
网络技术工程师月薪3万