Chinaunix首页 | 论坛 | 博客
  • 博客访问: 894814
  • 博文数量: 101
  • 博客积分: 2256
  • 博客等级: 大尉
  • 技术积分: 1481
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-19 17:52
文章存档

2017年(1)

2013年(2)

2012年(25)

2011年(73)

分类: Oracle

2011-04-19 18:39:34

一.脱机备份的具体步骤
1.1使用oracle的数据字典找到所有需要备份的文件;
*使用v$controlfile找到所有的控制文件;
*使用v$logfile找到所有的重做日志文件;
*使用dba_data_files找到所有的数据文件;
*使用v$datafile和v$tablespace找到所有的临时文件,以及临时表空间的对应关系;
*使用show parameter pfile找到正文参数文件或者二进制参数文件。
1.2正常关闭数据库(使用shutdown immediate/transactional/normal)
1.3将所有的文件复制到备份硬盘或磁带上
1.4重启数据库。


二.脱机恢复的步骤
2.1如果数据库打开着,就关闭数据库;
2.2将所有的备份数据文件和备份控制文件复制到数据库中原来的位置。
2.3也可以将所有的备份重做日志文件,参数文件和口令文件复制到数据库中原来的位置(该步骤可以不做)
2.4重启数据库;重启后就恢复到这次备份的节点;


三.脱机备份应用示例
以下环境是在我的笔记本上实验的:


SQL> set line 200
SQL> set pagesize 50
SQL> --用数据字典查找控制文件的位置;
SQL> select name from v$controlfile;

NAME
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
----------------------------------------
E:/ORACLE/PRODUCT/10.2.0/ORADATA/JACKY/CONTROL01.CTL
C:/CONTROLFILEJACKY/CONTROL02.CTL
F:/CONTROLFILEJACKY/CONTROL03.CTL

SQL> --然后查找所有重做日志文件;
SQL> select member from v$logfile;

MEMBER
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
----------------------------------------
F:/REDOLOG/DISK03/REDO03A.LOG
F:/REDOLOG/DISK02/REDO02A.LOG
F:/REDOLOG/DISK01/REDO01A.LOG
F:/REDOLOG/DISK04/REDO04A.LOG
F:/REDOLOG/DISK04/REDO04B.LOG
F:/REDOLOG/DISK04/REDO04C.LOG
F:/REDOLOG/DISK05/REDO05A.LOG
F:/REDOLOG/DISK05/REDO05B.LOG
F:/REDOLOG/DISK05/REDO05C.LOG
F:/REDOLOG/DISK01/REDO01B.LOG
F:/REDOLOG/DISK01/REDO01C.LOG
F:/REDOLOG/DISK02/REDO02B.LOG
F:/REDOLOG/DISK02/REDO02C.LOG
F:/REDOLOG/DISK03/REDO03B.LOG
F:/REDOLOG/DISK03/REDO03C.LOG

已选择15行。

SQL> --然后查找所有数据文件的位置;
SQL> col file_name for a60
SQL> select file_name,tablespace_name from dba_data_files;

FILE_NAME TABLESPACE_NAME
------------------------------------------------------------ -------------------
-----------
E:/ORACLE/USERS01.DBF USERS
E:/ORACLE/PRODUCT/10.2.0/ORADATA/JACKY/SYSAUX01.DBF SYSAUX
E:/ORACLE/PRODUCT/10.2.0/ORADATA/JACKY/UNDOTBS01.DBF UNDOTBS1
E:/ORACLE/PRODUCT/10.2.0/ORADATA/JACKY/SYSTEM01.DBF SYSTEM
C:/JINLIAN01.DBF JINLIAN
C:/JINLIAN_UNDO01.DBF JINLIAN_UNDO
C:/JINLIAN_INDEX01.DBF JINLIAN_INDEX
C:/JINLIAN_UNDO001.DBF JINLIAN1_UNDO

已选择8行。

SQL> show parameter pfile;

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string E:/ORACLE/PRODUCT/10.2.0/DB_1/
DBS/SPFILEJACKY.ORA
SQL> --可以看出数据库用的是二进制参数文件;
SQL> --下面正常关闭数据库;
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> --下面就是开始复制刚才查到的文件;
SQL> --为了示范一下,减少博客的啰嗦性,我就复制一个给大家看;
SQL> host copy E:/ORACLE/PRODUCT/10.2.0/DB_1/DBS/SPFILEJACKY.ORA c:/backup330/
Microsoft Windows XP
欢迎来到Jacky的工作室!!!
今天是2011-03-30 星期三
现在已经是22:36:10.87
已复制 1 个文件。
SQL>--成功复制,其它文件类似。


阅读(830) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~