Oracle数据库备份与恢复操作手册
- 格式:pdf
- 大小:340.25 KB
- 文档页数:6
CommVault Oracle数据库的备份及恢复For Linux北京同有飞骥科技有限公司上海分公司技术部目录1.iDataAgent for Oracle on Linux安装准备 (2)mV ault软件安装 (2)2.1.在Linux安装iDataAgent For Oracle (2)2.2.在Linux上载卸iDataAgent For Oracle (6)3.配置Oracle备份 (6)3.1.确认RMAN的备份方式 (6)3.2.配置CommVault内oracle子客户端 (7)3.3.建立备份策略 (10)4.Oracle数据恢复 (17)4.1.恢复控制文件 (17)4.2.将数据库启到Mount状态下 (20)4.3.恢复数据文件和归档日志 (20)4.4.重建redolog,并打开数据库 (25)1.iDataAgent for Oracle on Linux安装准备1.版本兼容,详见”Online Book CD”系统需求部分;2.Oracle需要处于自动归档模式下;3.在安装iData Agent For Oracle的过程中要停止oracle数据库,请做好停机准备;4.需要事先确认Oracle数据库的备份方式,本文档采用NOCATALOG的方式备份恢复oracle数据库。
5.在安装之前,请检查在CommServer和本机上的/etc/hosts文件中是否写入了CommServer和本机的IP地址及对应的主机名;mVault软件安装2.1. 在Linux安装iDataAgent For Oracle1.运行安装程序;2.接受安装协议;3.选择安装类型,本项目中选择安装到物理主机;4.选择Galaxy客户端模块;5.基本软件安装,选择备份服务器;6.选择安装路径;7.选择日志存放路径;8.输入Galaxy组名;9.选择客户端使用的存储策略;10.配置ORACLE实例;11.按照提示选择直至完成;2.2. 在Linux上载卸iDataAgent For Oracle1.运行卸载程序;# cd /appbakup/galaxy# ./cvpkgrm2.按ENTER开始卸载;This script will uninstall Galaxy from your machine.Press ENTER to begin ...3.选择要卸载的模块;1) CVGxBase <= Galaxy Base Module2) CVGxIDA <= FileSystem iDataAgent3)CVGxOrIDA <= Oracle iDataAgent4) ExitSubsystem number: [3]选择模块的序列号,用于相应模块的卸载。
1ORACLE 数据库数据备份和恢复操作手册1.1. ORACLE 参数设置进入 CMD 操作界面,使用sqlplus 连接数据库,图例 1 数据库连接操作连接语法: sqlplus system/Oracle2013@orcl参数说明参数说明备注sqlplus 语法命令system 数据库管理员用户名Oracle2013 system 用户密码数据库安装目录的tnsnames.ora 文件中可以找到orcl 数据库连接标示符Oracle11G 目录:C:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN图例 2 成功连接数据库环境变量设置 (在 Sqlplus 中执行 )create or replace directory <dir_name> as‘c:\tmpdir’;参数说明参数说明备注dir_name c:\tmpdir 路径名称文件路径也可以是另外的随意目录,用单引号括起来。
图例 3 环境变量设置1.2.数据备份备份脚本: expdp system/Oracle2013@orcl directory=file_pathdumpfile=ARADMIN.dat logfile=ARADMIN.log schemas=ARADMIN参数说明参数说明备注expdp 语法命令system 数据库管理员用户名Oracle2013 system 用户密码数据库安装目录的 tnsnames.ora 文件中可以找到orcl 数据库连接标示符Oracle11G 目录:C:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMINdirectory 文件目录名称导出数据库文件的存放目录dumpfile 数据库文件名称导出数据库文件的文件名logfile 数据库日志文件名称导出数据库的日志文件名称schemas 数据库用户操作:图例 4 数据库备份操作成功导出。
oracle数据库备份---备份和恢复(exp/imp,冷,热备份二(2009-09-15 19:00:42 转载标签:电脑oraclesqlyes路径信息it 分类:数据库一,逻辑备份准备:ALTER TABLESPACE tablsspace_name(空间表名) READ ONLY将其设置为只读属性(READ WRITE-- -----进入管理员(system,sys. 打开cmd输入exp--进行数据导出(表,用户,、 2: 进入要导出表空间的用户wuquanyin kgddxsksk按着步骤导出 port: Release 10.1.0.2.0 - Production on 星 pyright (c 1982, 2004, Oracle. All right 户名: wuquanyin 令: 接到: Oracle Database 10g Enterprise Editi th the Partitioning, OLAP and Data Mining 入数组提取缓冲区大小: 4096 > 1024 导出文件: EXPDAT.DMP >f:\stud.dmp --------------------------------------------------------- 打开cmd输入imp--进行数据导入 1:ALTER TABLESPACE tablsspace_name(空间表名) READ write; 2:导入文件: EXPDAT.DMP> f:\student.dmp 输入插入缓冲区大小 (最小为 8192 30720>1024经由常规路径由 EXPORT:V10.01.00 创建的导出文件已经完成 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集中的导入只列出导入文件的内容 (yes/no: no > no 由于对象已存在, 忽略创建错误 (yes/no: no > yes 导入权限 (yes/no: yes > yes 导入表数据 (yes/no: yes > yes 导入整个导出文件 (yes/no: no > yes . 正在将 WUQUANYIN 的对象导入到 WUQUANYIN . . 正在导入表 "STUDENT"导入了 1 行 . . 正在导入表"STUDENT2"导入了 0 行/ --------------------------------------------------------------------------------------------- 二,Oracle数据库冷备份及恢复过程V$backup 不论何种方式,数据库的备份即为v$datafile/v$controlfile/$logfile此三种文件的备份 1,通过v$controlfile 查看控制文件, 2,通过v$logfile查看重做日志文件, 3,通过V$DATAFILE查看数据文件. 发现他们都处于同一文件夹中D:\oracle\product\10.1.0\oradata\oracle中,索性都复制到另一台机器的e:\oracle\product\10.1.0\oradata\oracle中,复制之前shutdown系统。
Oracle10g数据库备份与恢复操作⼿册Oracle 10g数据库备份与恢复操作⼿册⽬录Oracle 10g数据库备份与恢复操作⼿册 (1)前⾔ (5)⽂档⽬的 (5)⽂档范围 (5)⽬标读者 (5)其他说明 (5)1冷备份 (6)1.1冷备份概述 (6)1.2备份步骤 (6)1.3恢复测试 (6)1.4结论 (7)2热备份 (7)2.1热备份特点 (7)2.2备份操作 (7)2.2.1数据⽂件备份 (8)2.2.2在线备份控制⽂件 (9)3热备份下的完全恢复 (9)3.1⾮ system表空间数据⽂件受损 (9)3.2 system表空间数据⽂件或⼤量数据⽂件受损 (10)3.3回滚数据⽂件损坏恢复 (11)3.4临时表空间⽂件损坏的恢复 (11)3.5控制⽂件损坏的恢复 (12)3.5.1单个控制⽂件被破坏 (12)3.5.2所有控制⽂件被破坏 (12)3.6⽇志⽂件损坏的恢复 (13)3.6.1正常关机情况下⾮当前联机⽇志⽂件被破坏 (13)3.6.2正常关机情况下当前联机⽇志损坏 (14)3.6.3数据库运⾏时或⾮正常关机情况下已归档⽇志 active⽇志⽂件被破坏 (15)3.6.4有备份的情况下数据库运⾏时或⾮正常关机情况下未归档active或 current⽇志⽂件被破坏173.6.5⽆备份的情况下数据库运⾏时或⾮正常关机情况下未归档active或 current⽇志⽂件被破坏194恢复不完全恢复 (20)4.1时间的恢复 (20)4.1.1概述 (20)4.1.2操作步骤 (21)4.2基于SCN的恢复 (22)4.2.1概述 (22)4.2.1操作步骤 (22)5 RMAN备份与恢复 (23)5.1 RMAN概述 (23)5.2 RMAN服务器和⽬标服务器的配置 (24)5.3 RMAN配置 (25)5.4备份集操作 (26)5.5 RMAN备份与恢复 (26)5.5.1全库备份与恢复 (26)5.5.2表空间备份与恢复 (27)5.5.3表空间备份与恢复 (28)5.5.4控制⽂件备份与恢复 (28)5.5.5归档⽂件备份与恢复 (29)5.5.6 RMAN脚本 (29)5.5.7 RMAN增量备份与恢复 (30)6逻辑备份(export/import) (31)6.1概述 (31)6.2简单导出、导⼊数据 (31)6.2.1简单导出 (31)6.2.2简单导⼊ (32)6.3增量导出导⼊ (32)6.3.1增量导出 (32)6.3.2导⼊ (33)7 Flashback. 337.1概述 (33)7.2 Flashback配置步骤 (33)7.3⾏级闪回操作步骤 (35)7.4表级闪回操作步骤 (36)7.5库级闪回操作步骤 (38)8 LogMiner.. 398.1概述 (39)8.2系统配置 (39)8.3操作步骤 (40)⽬录前⾔⽂档⽬的 备份与恢复是数据库管理中最重要的⽅⾯之⼀。
oracle 10g备份与还原总结一.总述1.数据库归档模式:* 非归档模式:当数据库数据只读不会改变时,数据不会改变,数据库适合用非归档模式, 这样提高性能* 归档模式:对于数据库数据经常变动,数据库最好用归档模式,这样可以尽量避免数据库数据丢失,使出现问题时灾害降到最低2.非归档模式与归档模式间的切换(在命令窗口下):@检查当前日志操作模式f:\>sqlplus sys/dba as sysdba连接数据库sql>select log_mode from v$database;@关闭数据库,后装载数据库,只能在mount状态下改变日志操作模式sql>startup mount@改变日志模式sql>alter database achivelog;(变为归档方式,否则为nochivelog)sql>alter database open;3.查看归档模式相关信息:@若采用默认设置,归档日志位置在快速恢复区@配置归档日志位置 log_archive_dest_n (n=[1:10])sql>alter system setlog_archive_dest_1 = 'location =c:\demo\archive [optional]';sql>alter system setlog_archive_dest_2 = 'service =standby [mandatory] [reopen]';其中:location 是本地service 是远程optional 无论归档是否成功,都会覆盖重做日志mandatory只有成功归档才会覆盖重做日志reopen 重新归档时间间隔默认是300s@显示归档信息,即显示显示日志操作模式sql>select name,log_mode from v$database;@显示归档日志信息sql>select name,sequence#,first_change# from v$archive_log;sequence#: 归档序列号first_change# : 起始SCN值@显示归档日志位置sql>select dest_name,destination,status from v$archive_dest;dest_name 归档位置参数名destination 位置@显示日志历史信息sql>select * from v$loghist;threade# : 重做线程号sequence# : 日志序列号first_change# : 起始SCN值first_time : 起始SCN发生时间switch_change : 切换SCN值二.非归档模式下的备份与还原. 日志采用覆盖原有日志的方式存储. 出现介质失败时,只能恢复到过去的完全备份点. 数据库OPEN状态是,不能备份数据库. 必须先关闭数据库,再备份,且必须备份所有数据,控制文件1.备份==冷备份@ 先关闭数据库sql>shutdown immediate@ 拷贝所有数据文件,和控制文件2.恢复* 数据文件出现丢失,但备份以来的重做日志内容尚未被覆盖,此时可以完全恢复@装载数据库sql>startup force mount@复制数据文件备份@恢复数据文件sql>recover datafile 1@打开数据库sql>alter database open;* 备份文件的重做日志内容已经被覆盖,则只能还原到备份点@关闭数据库@复制所有数据和控制备份文件至原位置@装载数据库,执行恢复命令sql>startup mountsql>recover database until cancel提示控制文件不再使用原有重做日志@用resetlogs选项打开数据库sql>alter database open resetlogs;三.归档模式. 可以防止数据丢失. 数据处于OPEN状态时可以进行备份. 当出现介质失败时,除了SYSTEM表空间中的数据文件外其他的都可以在open状态下恢复. 可执行完全恢复,也可以恢复到备份点与失败点之间的某时刻1.备份1)冷备份shutdown后拷贝所需数据文件和控制文件2)热备份@将数据库设置为归档模式@在数据库上发出全局检查点,在所有的数据文件头块上加锁sql>alter database begin backup ;@备份数据文件及控制文件数据文件直接拷贝至其他目录控制文件需使用alter database backup controlfilesql>alter database backup controlfile to 'd:\backup\demo.ctl';@结束数据备份,为确保数据文件备份的同步性,还应该归档当前日志组sql>alter database end backup;sql>alter system archive log cuurent;3)备份表空间*脱机备份(表空间处于OFFLINE状态,SYSTEM表空间和正在使用的UNDO空间不能脱机)@确定表空间包涵的数据文件,如空间USERSsql>select file_name from dba_data_fileswhere tablespace_name = 'users';@设置表空间为脱机状态sql>alter tablespace users offline;@复制数据文件@设置表空间联机sql>alter tablespace users online;*联机备份@确定对应关系@设置表空间为备份模式sql>alter tablespace users begin backup ;@复制数据文件@设置表空间为正常模式sql>alter tablespace users end backup ;*处理联机备份失败当执行联机备份时,若出现例程失败,再次打开数据库时,如果数据文件仍处于备份状态,则会出错,此时需要结束备份@装载数据库sql>startup force mount@查看处于联机备份状态的所有数据文件sql>select file# from v$backup where status = 'active';@结束联机备份状态sql>alter tablespace end backup或alter tablespace datafile backup;或recover datafile 序号@打开数据库sql>alter database open;2.还原1)完全恢复相关命令:recover database :恢复数据库的多个数据文件(在MOUNT状态下运行)recover tadaspace :恢复多个表空间的所有数据文件(在open状态下运行)recover datafile :恢复一个或多个数据文件(在mount,open 状态下都可)*在mount状态下恢复数据文件(用于SYSTEM表空间恢复)@装载数据库 mount状态@确定需要恢复的数据文件sql>select file#,error from v$recover_file@拷贝备份至原位置@恢复数据库 recover..上述命令@打开数据库 alter database open;*在open状态下恢复关闭后意外对视的数据文件,此时数据库将无法打开@装载数据库 mount@确定需要恢复的数据文件@使相应的数据文件脱机sql>alter database datafile 4 offline;@打开数据库sql>alter database open@复制数据备份文件@恢复数据文件@是数据文件联机 alter database datafile 4 online; *在open状态下恢复打开时意外丢失的数据文件@确定要恢复的数据文件@使数据文件脱机@复制数据文件@恢复相应的表空间或数据文件@使相应的表空间或数据文件联机*在open状态下恢复未备份的数据文件(要求在归档模式下,新建数据文件,其从简历开始的所有归档日志必须全部存在)@装载数据库@确定要恢复的数据文件@是数据文件脱机@打开数据库@重新建立数据文件sql>alter database create datafile 'd:\demo\users01.dbf';@恢复数据文件@使数据文件联机2)不完全恢复使用已备份的数据文件,归档日志,和重做日志,将数据库恢复到备份点与失败点之间某个时刻的状态*恢复分类基于时间的恢复:误删除表,误截断表,提交了错误的数据基于取笑恢复:恢复到某个日志序列号之前的状态基于SCN的恢复:恢复到特定SCN值的状态基于备份控制文件恢复:表空间被意外删除,或所有控制文件全部损坏*不完全恢复指令recover database until timerecover database until changerecover database until cancelrecover database .. using backup controlfile*基于时间的恢复@关闭数据库(为防止备份失败,应备份当前数据库所有文件 @装载数据库 startup mount@复制所有备份数据文件,并确定备份文件的时间点sql>select file#,to_char(time,'yyyy-mm-dd hh24:mi:ss)from v$recover_file;@执行recover database until timesql>recover database until time "2006-09-26 16:40:33'@以resetlogs方式打开数据库,并检查恢复结果sql>alter database open resetlogs;@备份数据库所有数据文件和控制文件,因为当以resetlogs方式打开数据库后会重新建立重做日志,清空原有重做日志的所有内容,并将日志序列号复位为1sql>select name from v$datafile;sql>alter database begin backup;拷贝数据文件sql>alter database end backup;sql>alter database backup controlfileto 'd:\backup\demo.ctl' reuse;sql>alter system archive log cuurent;*基于SCN恢复@关闭数据库@装载数据库 mount@复制所有备份数据文件,确定备份文件SCN值sql>select file#,change#, from v$recover_file; @执行recover database until changesql>recover database until change 675978;@以resetlogs方式打开数据库@备份数据库所有数据文件和控制文件*基于取消恢复@关闭数据库@装载数据库@复制所有备份的数据文件,确定备份文件的SCN值sql>select file#,change# from v$recover_file; @执行recover database until canclesql>recover database until cancel@以resetlogs方式打开数据库@备份所有数据文件和控制文件*基于备份控制文件的恢复@通过查看alert文件,确定误操作时间@关闭数据库@复制所有备份的数据文件,控制文件@装载数据库@执行recover database ing backup controlfile sql>recover database until time '2004-09-26 19:51:06'using backup controlfile@以resetlogs 方式打开数据库@备份所有数据文件和控制文件。
Linux_oracle数据库的备份与恢复1 数据库备份和恢复(备份和恢复均已做成脚本自动运行,下列操作供参考,请不要在生产机上做测试) 1)数据库备份:◆将dbexp.parm,dbexp.sh 拷贝至/home/oracle/backup/.以oracle用户登录系统$ cd /home/oracle/backup$ dos2unix *$ chmod 755 dbexp.sh◆手工执行备份,用oracle用户登录:$ cd /home/oracle/backup$ ./dbexp.sh◆自动执行备份,用root用户登录:#crontab -e 00 01 * * * su - oracle -c "/home/oracle/backup/dbexp.sh"2)数据库恢复:以oracle用户登录系统◆删除用户:sqlplus /nolog>connect / as sysdba;>drop user center cascade;>create user center identified by center;>grant connect,resource,dba to center◆恢复数据库$imp center/center full=y grants=y INDEXES=y constraints=y LOG=/tmp/backup.log rows=y ignore=y file=xxx(xxx--为以前备份的数据文件,如checkid_20041123.dat)oracle数据库的备份与恢复原理及方法:导出(备份)exp 用户名/密码@服务名file=d:daochu.dmp (rows=no(导出空结构)) 导入(恢复)imp 用户名/密码@服务名file=d:daochu.dmp fromuser=原用户名touser=新用户名---- 当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(包括机器故障、介质故障、误操作等),数据库有时也可能遭到破坏,这时如何尽快恢复数据就成为当务之急。