数据库冷备份及恢复

本文详细介绍在Windows XP环境下使用Oracle Database 11g进行数据库冷备份及恢复的过程。包括查询数据文件、控制文件和日志文件的位置,备份数据文件和参数文件的方法,以及在模拟文件丢失场景下进行数据库恢复的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

         数据库冷备份及恢复

操作环境为windows xp + Oracle Database 11g Enterprise Edition Release 11.2.0.1.0

1.查看数据文件:

SQL> select FILE_NAME,STATUS,FILE_ID from dba_data_files;

FILE_NAME                                STATUS                FILE_ID

---------------------------------------- ------------------ ----------

D:\APP\WWANG\ORADATA\MDSP\USERS01.DBF    AVAILABLE                   4

D:\APP\WWANG\ORADATA\MDSP\UNDOTBS01.DBF AVAILABLE                   3

D:\APP\WWANG\ORADATA\MDSP\SYSAUX01.DBF  AVAILABLE                   2

D:\APP\WWANG\ORADATA\MDSP\SYSTEM01.DBF  AVAILABLE                   1

D:\APP\WWANG\ORADATA\MDSP\IMUSE01.DBF    AVAILABLE                   5

D:\APP\WWANG\ORADATA\MDSP\JACK.DBF       AVAILABLE                   6

已选择6行。

2.查看控制文件:

SQL> select NAME from  v$controlfile;

NAME

----------------------------------------

D:\APP\WWANG\ORADATA\MDSP\CONTROL01.CTL

D:\APP\WWANG\FLASH_RECOVERY_AREA\MDSP\CONTROL02.CTL

SQL>

3.查看日志文件:

SQL> col MEMBER format a50

SQL> select GROUP#,MEMBER from  v$logfile;

    GROUP# MEMBER

---------- -------------------------------------------------

         3 D:\APP\WWANG\ORADATA\MDSP\REDO03.LOG

         2 D:\APP\WWANG\ORADATA\MDSP\REDO02.LOG

         1 D:\APP\WWANG\ORADATA\MDSP\REDO01.LOG

SQL>

4.创建一张表插入一条记录

SQL> create table test (id number ,name varchar(10));

表已创建。

SQL> insert into test values (1,'jack');

已创建 1 行。

SQL> commit;

提交完成。

SQL> select * from test;

        ID NAME

---------- --------------------

         1 jack

SQL>

5.关闭数据库备份(系统的拷贝)数据文件,联机日志,控制文件

SQL> shutdown immediate

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> host copy D:\app\wwang\oradata\mdsp\*.* E:\oraclebakup

D:\app\wwang\oradata\mdsp\CONTROL01.CTL

D:\app\wwang\oradata\mdsp\IMUSE01.DBF

D:\app\wwang\oradata\mdsp\JACK.DBF

D:\app\wwang\oradata\mdsp\REDO01.LOG

D:\app\wwang\oradata\mdsp\REDO02.LOG

D:\app\wwang\oradata\mdsp\REDO03.LOG

D:\app\wwang\oradata\mdsp\SYSAUX01.DBF

D:\app\wwang\oradata\mdsp\SYSTEM01.DBF

D:\app\wwang\oradata\mdsp\TEMP01.DBF

D:\app\wwang\oradata\mdsp\UNDOTBS01.DBF

D:\app\wwang\oradata\mdsp\USERS01.DBF

已复制        11 个文件。

备份参数文件,参数文件只需要备份一次

SQL> host copy D:\app\wwang\product\11.2.0\dbhome_1\database\SPFILEMDSP.ORA e:\oraclebackup

已复制         1 个文件。

SQL>

6.启动数据库继续插入记录

SQL> startup

ORACLE 例程已经启动。

Total System Global Area  326414336 bytes

Fixed Size                  1374388 bytes

Variable Size             251660108 bytes

Database Buffers           67108864 bytes

Redo Buffers                6270976 bytes

数据库装载完毕。

数据库已经打开。

SQL> insert into test values (2,'jack');

已创建 1 行。

SQL> commit;

提交完成。

SQL> alter system switch logfile;

系统已更改。

SQL>

停止数据库模拟丢失多个文件

SQL> shutdown immediate

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> host del D:\app\wwang\oradata\mdspSYSTEM01.DBF

SQL> host del D:\app\wwang\oradata\mdsp\SYSTEM01.DBF

SQL> host del D:\app\wwang\oradata\mdsp\USERS01.DBF

SQL> host del D:\app\wwang\oradata\mdsp\UNDOTBS01.DBF

SQL>

启动数据库startup

SQL> startup

ORACLE 例程已经启动。

Total System Global Area  326414336 bytes

Fixed Size                  1374388 bytes

Variable Size             251660108 bytes

Database Buffers           67108864 bytes

Redo Buffers                6270976 bytes

数据库装载完毕。

ORA-01157: 无法标识/锁定数据文件 1 - 请参阅 DBWR 跟踪文件

ORA-01110: 数据文件 1: 'D:\APP\WWANG\ORADATA\MDSP\SYSTEM01.DBF'

Alter 日志报错找不到文件

ALTER DATABASE OPEN

Errors in file d:\app\wwang\diag\rdbms\mdsp\mdsp\trace\mdsp_dbw0_3732.trc:

ORA-01157: ????/?????? 1 - ??? DBWR ????

ORA-01110: ???? 1: 'D:\APP\WWANG\ORADATA\MDSP\SYSTEM01.DBF'

ORA-27041: ??????

OSD-04002: 无法打开文件

O/S-Error: (OS 2) 系统找不到指定的文件。

Errors in file d:\app\wwang\diag\rdbms\mdsp\mdsp\trace\mdsp_dbw0_3732.trc:

ORA-01157: ????/?????? 3 - ??? DBWR ????

ORA-01110: ???? 3: 'D:\APP\WWANG\ORADATA\MDSP\UNDOTBS01.DBF'

ORA-27041: ??????

OSD-04002: 无法打开文件

O/S-Error: (OS 2) 系统找不到指定的文件。

Errors in file d:\app\wwang\diag\rdbms\mdsp\mdsp\trace\mdsp_dbw0_3732.trc:

ORA-01157: ????/?????? 4 - ??? DBWR ????

ORA-01110: ???? 4: 'D:\APP\WWANG\ORADATA\MDSP\USERS01.DBF'

ORA-27041: ??????

OSD-04002: 无法打开文件

O/S-Error: (OS 2) 系统找不到指定的文件。

Errors in file d:\app\wwang\diag\rdbms\mdsp\mdsp\trace\mdsp_ora_180.trc:

ORA-01157: 鏃犳硶鏍囪瘑/閿佸畾鏁版嵁鏂囦欢 1 - 璇峰弬闃?DBWR 璺熻釜鏂囦欢

ORA-01110: 鏁版嵁鏂囦欢 1: 'D:\APP\WWANG\ORADATA\MDSP\SYSTEM01.DBF'

ORA-1157 signalled during: ALTER DATABASE OPEN...

Thu Jun 07 22:21:02 2012

Checker run found 3 new persistent data failures

7.查询v$recover_file视图记录需要恢复的文件

SQL> select FILE#,ERROR,"ONLINE" from  v$recover_file;

     FILE# ERROR                ONLINE

---------- -------------------- --------------

         1 FILE NOT FOUND       ONLINE

         3 FILE NOT FOUND       ONLINE

         4 FILE NOT FOUND       ONLINE

9.把备份的1,3,4文件拷贝到原来的目录

进行介质恢复

SQL> recover database;

完成介质恢复。

SQL>

SQL> alter database open

数据库已更改。

SQL> select * from test;

        ID NAME

---------- --------------------

         1 jack

         2 jack

SQL>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值