oracle数据库备份与恢复 a piece of cake (3)
http://www.chinaunix.net 作者:Ganku 发表于:2003-08-26 10:49:53
oracle数据库在线备份:(windows平台)
1. 检查你的数据库是否运行在Archive模式下。
以system连接数据库运行以下的查询语句。
SQL> select name,log_mode from v$database;
NAME LOG_MODE
--------- ------------
DEMO ARCHIVELOG
如果你的log_mode显示为archivelog, OK你的数据库可以进行在线的备份。否则参考文档修改数据为archive mode。
2. 建立教本管理目录 C:\oracle\admin\admin script
3. 建立数据库备份的脚本
在上面建立的目录下建立如下的两个脚本。
3.1 建立执行备份任务的脚本(批处理文件)
文件内容如下:
@echo OFF
Rem ===========================================================================
Rem NAME - Open_Backup_Run.bat
Rem FUNCTION - Creates a backup script for a User Managed backup
Rem NOTES - This script will create a script and run OS copy commands
Rem on closed (cold) database
Rem MODIFIED - Tianliang Guo 02/08/12
Rem ===========================================================================
Rem For Windows, set environment variables for the root path.
set ORACLE_SID=TSTDB
set ORACLE_CONNECTSTRING=tstdb
set ORACLE_BASE=c:\oracle
set ORACLE_HOME=%ORACLE_BASE%\ora81
set ORACLE_DATA=%ORACLE_BASE%\oradata\%ORACLE_SID%
set ORACLE_ADMIN=%ORACLE_BASE%\admin\%ORACLE_SID%
%ORACLE_HOME%\bin\sqlplus /nolog @Open_Backup.sql > Open_Backup.sql.log
3.2 建立完成备份认为的命令文件(sqlplus内执行的sql脚本)
文件内容如下:
Rem =====================================================================================
Rem NAME - Open_Backup.sql
Rem FUNCTION - Creates a backup command file for a User Managed Open database backup
Rem NOTES - This script will create a script and run OS copy commands
Rem on an open (hot) database. The datafile backups will be inconsistent.
Rem MODIFIED - Mr. Tianliang Guo 2002/08/11






