数据库热备份与完整恢复测试

数据库 热备份与完整恢复 测试

1.首先,必需保证数据库在归档模式下。

2.热备份数据文件,通过alter tablespace xxx begin backup把表空间设为备份状态,可以手工或在sql下运行host copy把数据文件复制到指定地方,最后把表空间改为正常状态(alter tablepace xxx end backup)。

3.数据库恢复:使用语句rcover datafile,alter database open即可以实现数据库的完整恢复。

具体的步骤如下:

SQL> conn / as sysdba

已连接。

//确定数据库在归档模式下。

SQL> select log_mode from v$database;

LOG_MODE

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

ARCHIVELOG

//查询表空间对应的数据文件,一般表空间名跟对应数据文件名是相同的,可以跳过这一步。

SQL> select v$tablespace.name,v$datafile.name from v$tablespace, v$datafile

2 where v$tablespace.ts#=v$datafile.ts#;

NAME

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

NAME

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


SYSTEM

F:/ORACLE/ORADATA/EBOOK/SYSTEM01.DBF


UNDOTBS1

F:/ORACLE/ORADATA/EBOOK/UNDOTBS01.DBF


CWMLITE

F:/ORACLE/ORADATA/EBOOK/CWMLITE01.DBF


DRSYS

F:/ORACLE/ORADATA/EBOOK/DRSYS01.DBF


EXAMPLE

F:/ORACLE/ORADATA/EBOOK/EXAMPLE01.DBF


INDX

F:/ORACLE/ORADATA/EBOOK/INDX01.DBF


ODM

F:/ORACLE/ORADATA/EBOOK/ODM01.DBF


TOOLS

F:/ORACLE/ORADATA/EBOOK/TOOLS01.DBF


USERS

F:/ORACLE/ORADATA/EBOOK/USERS01.DBF


XDB

F:/ORACLE/ORADATA/EBOOK/XDB01.DBF

 

已选择10行。

 

//将表空间设为备份状态.

SQL> alter tablespace system begin backup;

表空间已更改。

//将数据文件备份到目录f:/oracle/backuparea下.

SQL> host copy f:/oracle/oradata/ebook/system01.dbf f:/oracle/backuparea/

已复制 1 个文件。

SQL> alter tablespace system end backup;

表空间已更改。

//建表test的目的为测试此恢复是否是完整恢复。

SQL> create table scott.test(t int);

表已创建。

SQL> insert into scott.test values(1);

已创建 1 行。

SQL> insert into scott.test values(2);

已创建 1 行。


SQL> commit;


提交完成。

 

SQL> shutdown immediate

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

 

//删除system01.dbf或移动到其他目录造成数据库崩溃。


SQL> startup

ORACLE 例程已经启动。

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值