Oracle数据库的备份方法

上传人:206****923 文档编号:41702695 上传时间:2018-05-30 格式:DOCX 页数:8 大小:44.23KB
返回 下载 相关 举报
Oracle数据库的备份方法_第1页
第1页 / 共8页
Oracle数据库的备份方法_第2页
第2页 / 共8页
Oracle数据库的备份方法_第3页
第3页 / 共8页
Oracle数据库的备份方法_第4页
第4页 / 共8页
Oracle数据库的备份方法_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《Oracle数据库的备份方法》由会员分享,可在线阅读,更多相关《Oracle数据库的备份方法(8页珍藏版)》请在金锄头文库上搜索。

1、 内部公开 Internal Use OnlyAll Rights reserved, No Spreading abroad without Permission of ZTE第 1 页1、引言 Oracle 数据库的备份方法很多,无论使用那种备份方法,备份的目的都是为了在出现故障后能够以尽可能小的时间和代价恢复系统。比如使用 export 实用程序导出数据库对象、使用Oracle 备份数据库、使用 Oracle 对称复制、使用 Oracle 并行服务器、使用 Oracle 冷备份、使用 Oracle 热备份等各种备份方法都有其优缺点、适用的场合和相应的软硬件要求。本文主要就用 export

2、 实用程序导出数据库对象、Oracle 冷备份、Oracle 热备份这三种最基本的备份方法进行详细的探讨,分析各自的优缺点和适用的场合,并给出自动执行这些备份方案的脚本文件。 2、三种备份方案的比较 备份方案 综述 优点 缺点 冷备份 冷备份是 Oracle 最简单的一种备份;执行冷备份前必须关闭数据库;然后使用操作系统实用工具或者第三方工具备份所有相关的数据库文件。 能简单快速地备份。能简单快速地恢复。执行简单。 必须关闭数据库。 不能进行点恢复。 热备份 热备份是当数据库正在运行时进行数据备份的过程。执行热备份的前提是:数据库运行在可归档日志模式。适用于 24X7 不间断运行的关键应用系统

3、。 备份时数据库可以是打开的。热备份可以用来进行点恢复。初始化参数文件、归档日志在数据库正常运行时是关闭的,可用操作系统命令拷贝。 执行过程复杂。由于数据库不间断运行,测试比较困难。不能用操作系统实用工具拷贝打开的文件。必须使用 Oracle 提供的 ocopy 工具来拷贝打开的文件。热备份可能造成 CPU、I/O 过载,应在数据库不太忙时进行。 Export 导出数据库对象 冷备份和热备份都备份物理数据库文件,因而被称为物理备份。而 export 备份的是数据库对象,因此被称为逻辑备份。 能执行对象或者行恢复。备份和恢复速度更快。能够跨操作系统平台迁移数据库。数据库可一直运行。 export

4、 并不是冷备份和热备份的替代工具。冷、热备份可保护介质失效。export 备份可保护用户或应用错误。 3、冷备份方案的实施 3.1 冷备份数据库的步骤 (1)关闭数据库; (2)备份所有相关的数据库文件:初始化参数文件、控制文件(可用 select name from 内部公开 Internal Use OnlyAll Rights reserved, No Spreading abroad without Permission of ZTE第 2 页v$controlfile;列出所有控制文件)、数据文件(可用 select name from v$datafile;列出所有数据文件)、Re

5、do 日志(可用 select member from v$logfile;列出所有 redo 日志文件)、归档的 Redo 日志(可用 select sequence#,first_time from v$loghist;列出所有归档redo 日志文件的顺序号和产生时间)。 3.2 冷备份数据库的脚本文件 coldbak.cmd rem Oracle 数据库冷备份脚本文件名 coldbak.cmd rem 用于 Windows NT/2000 平台,已经过严密的测试,大家可以试验! rem 该脚本执行后,在 c:temp 目录中产生db_restrict.sql、db_shut.sql、db

6、_start.sql、 rem cold.sql、cold.cmd 等 5 个脚本文件,冷备份的核心命令在 cold.cmd 中。 rem 设置 SID set oracle_sid=tmq rem 设置初始化参数文件 set my_pfile=e:oracleora81databaseinittmq.ora set my_ifile=E:OracleADMINtmqpfileinit.ora rem 设置归档日志目录 set my_archive_dir=E:OracleORADATAtmqarchive rem 设置 internal 帐户的密码 set my_password=oracl

7、e rem 建立临时目录 mkdir c:temp set my_temp=c:temp rem 建立备份目录,该目录必须有足够大的空间用于存放数据库的备份文件 mkdir e:backup set my_bakdir=e:backup rem = (1) create script file db_restrict.sql= echo connect internal/%my_password%; %my_temp%db_restrict.sql echo shutdown immediate; %my_temp%db_restrict.sql echo startup restrict p

8、file=%my_pfile%; %my_temp%db_restrict.sql echo exit %my_temp%db_restrict.sql rem = (2) create script file db_shut.sql = echo connect internal/%my_password%; %my_temp%db_shut.sql echo shutdown immediate; %my_temp%db_shut.sql echo exit %my_temp%db_shut.sql rem = (3) create script file db_start.sql = e

9、cho connect internal/%my_password%; %my_temp%db_start.sql echo startup pfile=%my_pfile%; %my_temp%db_start.sql echo exit %my_temp%db_start.sql svrmgrl %my_temp%db_restrict.sql rem = (4) create script file cold.sql = echo set heading off; %my_temp%cold.sql echo set feedback off; %my_temp%cold.sql ech

10、o spool %my_temp%cold.cmd; %my_temp%cold.sql echo 在这里设计冷备份的命令,备份控制文件、数据文件和日志文件 内部公开 Internal Use OnlyAll Rights reserved, No Spreading abroad without Permission of ZTE第 3 页echo select copy | name | %my_bakdir% from v$controlfile; %my_temp%cold.sql echo select copy | member | %my_bakdir% from v$logfi

11、le; %my_temp%cold.sql echo select copy | file_name | %my_bakdir% from dba_data_files; %my_temp%cold.sql echo spool off; %my_temp%cold.sql echo exit %my_temp%cold.sql rem = (5) run cold.sql to genrate cold.cmd = sqlplus internal/%my_password% %my_temp%cold.sql echo 在这里设计冷备份的命令,备份参数文件、归档日志文件 echo. %my

12、_temp%cold.cmd echo copy %my_pfile% %my_bakdir% %my_temp%cold.cmd echo copy %my_ifile% %my_bakdir% %my_temp%cold.cmd echo. %my_temp%cold.cmd echo copy %my_archive_dir%*.* %my_bakdir% %my_temp%cold.cmd rem = shut down database = svrmgrl %my_temp%db_shut.sql rem = run cold.cmd to perform the cold back

13、up 开始执行冷备份 = call %my_temp%cold.cmd rem = start up the database = svrmgrl %my_temp%db_start.sql echo = the cold backup is completed! = 4、热备份方案的实施 4.1 热备份数据库的前提条件:数据库运行在归档模式 Oracle 数据库的 redo 日志记录在数据库上进行的所有活动。LGWR 后台进程以一种循环方式写这些日志文件,从第一个 redo 日志到下一个,直到该组的最后一个,然后由从第一个日志写起。 在非归档模式下,当循环写到最后一个日志文件后,就重写第一个

14、日志。因此,非归档模式下唯一的数据库恢复办法就是使用冷备份。 在归档模式下,当 redo 日志满时,一个 ARCH 后台进程就读取全部 redo 日志,然后将其写到归档日志。因此,可以使用热备份和点恢复。在归档日志模式下,如果归档日志目的空间已满,数据库活动将暂时停止,只有释放一些空间后,数据库才能继续运行。通常,background_dump_destination 将产生一个跟踪文件来显示归档方面的问题。 Oracle 数据库安装默认运行在非归档模式,通过以下步骤可以从非归档模式转换为归档模式: (1)编辑参数文件 init.ora,设置以下参数 # 设置数据库自动归档 log_archi

15、ve_start = true # 设置归档日志文件的目录,该目录必须事先已建立,并有大量可利用的空间 log_archive_dest_1=“location=%oracle_base% oradata%oracle_sid%archive“ # 设置归档日志文件名的格式。%s 表示顺序号,%t 表示线程号。 log_archive_format = “%oracle_sid%T%S.ARC“ 内部公开 Internal Use OnlyAll Rights reserved, No Spreading abroad without Permission of ZTE第 4 页(2)在 svrmgrl 上运行以下命令 svrmgrlconnect internal/YOUR_PASSWORD svrmgrlshutdown immediate; svrmgrlstartup mount exclusive; svrmgrlalter database archivelog; svrmgrlalter database open; svrmgrlshutdown immediate; (3)执行数据库冷备份 当数据库运行在

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号