D:\Oracle\oradata
下包含控制文件,联机日志文件和数据文件
下包含控制文件,联机日志文件和数据文件
解决方案 »
- 包体编译总不通过,想请教下大家
- PLSQL如何调用另一个sql以及如何传递参数
- oracle9i 归档日志每天以150G的日志增长,请问能否检测日志是如何产生?
- 请教高手!一系列DDL语句的原子性
- 个hibernate查询ORCALE数据库的问题??
- 我在delphi中用ado动态连接oracle时老报ORA-12154:TNS:无法处理服务名
- 如何实现id自增一?
- ORACLE初学者,想进一步提高,请帮助!!!!!
- 大家好,请问一下学习ORACLE应从哪里入手,有什么好的办法没有.
- 已成功建立database link 但是两台服务器之间的字符集不一样,怎样解决汉字乱码的问题
- 通过ODBC,如何往Oracle数据库中插入一个包含附件的记录?
- 用动态SQL插入记录是不是会把尾部的空格去掉,怎么解决?
select * from v$controlfile;
select * from v$datafile;
select * from v$logfile;
3.1 冷备份数据库的步骤
(1)关闭数据库;
(2)备份所有相关的数据库文件:初始化参数文件、控制文件(可用select name from v$controlfile;列出所有控制文件)、数据文件(可用select name from v$datafile;列出所有数据文件)、Redo日志(可用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_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=oracle
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 pfile=%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 =====
echo 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
echo spool %my_temp%cold.cmd; >>%my_temp%cold.sql
echo 在这里设计冷备份的命令,备份控制文件、数据文件和日志文件
echo select 'copy ' ^|^| name ^|^| ' %my_bakdir%' from v$controlfile; >>%my_temp%cold.sql
echo select 'copy ' ^|^| member ^|^| ' %my_bakdir%' from v$logfile; >>%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_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 backup 开始执行冷备份 ======
call %my_temp%cold.cmd
rem ====== start up the database =======
svrmgrl @%my_temp%db_start.sql
echo ===== the cold backup is completed!!! ======