技术文献ORACLE数据库的备份方法

ORACLE数据库的备份方法1、引言Oracle数据库的备份方法很多,无论使用那种备份方法,备份的目的都是为了在出现故障后能够以尽可能小的时间和代价恢复系统。比如使用export实用程序导出数据库对象、使用Oracle备份数据库、使用Oracle对称复制、使用Oracle并行服务器、使用Oracle冷备份、使用Oracle热备份等各种备份方法都有其优缺点、适用的场合和相应的软硬件要求。本文主要就用export实用程序导出数据库对象、Oracle冷备份、Oracle热备份这三种最基本的备份方法进行详细的探讨,分析各自的优缺点和适用的场合,并给出自动执行这些备份方案的脚本文件。2、三种备份方案的比较备份方案综述优点缺点冷备份冷备份是Oracle最简单的一种备份;执行冷备份前必须关闭数据库;然后使用操作系统实用工具或者第三方工具备份所有相关的数据库文件。能简单快速地备份。能简单快速地恢复。执行简单。必须关闭数据库。不能进行点恢复。热备份热备份是当数据库正在运行时进行数据备份的过程。执行热备份的前提是:数据库运行在可归档日志模式。适用于24X7不间断运行的关键应用系统。备份时数据库可以是打开的。热备份可以用来进行点恢复。初始化参数文件、归档日志在数据库正常运行时是关闭的,可用操作系统命令拷贝。执行过程复杂。由于数据库不间断运行,测试比较困难。不能用操作系统实用工具拷贝打开的文件。必须使用Oracle提供的ocopy工具来拷贝打开的文件。热备份可能造成CPU、I/O过载,应在数据库不太忙时进行。Export导出数据库对象冷备份和热备份都备份物理数据库文件,因而被称为物理备份。而export备份的是数据库对象,因此被称为逻辑备份。能执行对象或者行恢复。备份和恢复速度更快。能够跨操作系统平台迁移数据库。数据库可一直运行。export并不是冷备份和热备份的替代工具。冷、热备份可保护介质失效。export备份可保护用户或应用错误。3、冷备份方案的实施3.1冷备份数据库的步骤(1)关闭数据库;(2)备份所有相关的数据库文件:初始化参数文件、控制文件(可用selectnamefromv$controlfile;列出所有控制文件)、数据文件(可用selectnamefromv$datafile;列出所有数据文件)、Redo日志(可用selectmemberfromv$logfile;列出所有redo日志文件)、归档的Redo日志(可用selectsequence#,first_timefromv$loghist;列出所有归档redo日志文件的顺序号和产生时间)。3.2冷备份数据库的脚本文件coldbak.cmdremOracle数据库冷备份脚本文件名coldbak.cmdrem用于WindowsNT/平台,已经过严密的测试,大家可以试验!!!rem该脚本执行后,在c:\temp目录中产生db_restrict.sql、db_shut.sql、db_start.sql、remcold.sql、cold.cmd等5个脚本文件,冷备份的核心命令在cold.cmd中。rem设置SIDsetoracle_sid=tmqrem设置初始化参数文件setmy_pfile=e:\oracle\ora81\database\inittmq.orasetmy_ifile=E:\Oracle\ADMIN\tmq\pfile\init.orarem设置归档日志目录setmy_archive_dir=E:\Oracle\ORADATA\tmq\archiverem设置internal帐户的密码setmy_password=oraclerem建立临时目录mkdirc:\tempsetmy_temp=c:\temprem建立备份目录,该目录必须有足够大的空间用于存放数据库的备份文件mkdire:\backupsetmy_bakdir=e:\backuprem====(1)createscriptfiledb_restrict.sql=====echoconnectinternal/%my_password%;%my_temp%\db_restrict.sqlechoshutdownimmediate;%my_temp%\db_restrict.sqlechostartuprestrictpfile=%my_pfile%;%my_temp%\db_restrict.sqlechoexit%my_temp%\db_restrict.sqlrem====(2)createscriptfiledb_shut.sql=====echoconnectinternal/%my_password%;%my_temp%\db_shut.sqlechoshutdownimmediate;%my_temp%\db_shut.sqlechoexit%my_temp%\db_shut.sqlrem====(3)createscriptfiledb_start.sql=====echoconnectinternal/%my_password%;%my_temp%\db_start.sqlechostartuppfile=%my_pfile%;%my_temp%\db_start.sqlechoexit%my_temp%\db_start.sqlsvrmgrl

%my_temp%\db_restrict.sqlrem====(4)createscriptfilecold.sql=====echosetheadingoff;%my_temp%\cold.sqlechosetfeedbackoff;%my_temp%\cold.sqlechospool%my_temp%\cold.cmd;%my_temp%\cold.sqlecho在这里设计冷备份的命令,备份控制文件、数据文件和日志文件echoselectcopy^

^

name^

^

%my_bakdir%fromv$controlfile;%my_temp%\cold.sqlechoselectcopy^

^

member^

^

%my_bakdir%fromv$logfile;%my_temp%\cold.sqlechoselectcopy^

^

file_name^

^

%my_bakdir%fromdba_data_files;%my_temp%\cold.sqlechospooloff;%my_temp%\cold.sqlechoexit%my_temp%\cold.sqlrem=====(5)runcold.sqltogenratecold.cmd========sqlplusinternal/%my_password%

%my_temp%\cold.sqlecho在这里设计冷备份的命令,备份参数文件、归档日志文件echo.%my_temp%\cold.cmdechocopy%my_pfile%%my_bakdir%%my_temp%\cold.cmdechocopy%my_ifile%%my_bakdir%%my_temp%\cold.cmdecho.%my_temp%\cold.cmdechocopy%my_archive_dir%\*.*%my_bakdir%%my_temp%\cold.cmdrem=====shutdowndatabase========svrmgrl

%my_temp%\db_shut.sqlrem======runcold.cmdtoperformthecoldbackup开始执行冷备份======call%my_temp%\cold.cmdrem======startupthedatabase=======svrmgrl

%my_temp%\db_start.sqlecho=====thecoldbackupis







































怎么治白癜风
苯酚厂家



转载请注明:http://www.xcqg58.com/pxxx/7064.html

  • 上一篇文章:
  •   
  • 下一篇文章: 没有了