oracle10g 修复安装包,ORACLE 10G 安装数据库 代码分析,使用backup包恢复数据文件方式...

本文详细介绍了如何使用Oracle 10G进行数据库恢复,包括分配设备、指定数据文件、恢复备份和创建控制文件等步骤,最后进行数据库的重启和重设。

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

ORACLE 10G 安装数据库 代码分析[@more@]

set echo off;

set serveroutput on;

select TO_CHAR(systimestamp,'YYYYMMDD HH:MI:SS') from dual;

variable devicename varchar2(255);

declare

omfname varchar2(512) := NULL;

done boolean;

begin

dbms_output.put_line(' ');

dbms_output.put_line(' Allocating device.... ');

dbms_output.put_line(' Specifying datafiles... ');

:devicename := dbms_backup_restore.deviceAllocate;

dbms_output.put_line(' Specifing datafiles... ');

dbms_backup_restore.restoreSetDataFile;

dbms_backup_restore.restoreDataFileTo(1, 'D:oracleproduct10.2.0oradataOra10gSYSTEM01.DBF', 0, 'SYSTEM');

dbms_backup_restore.restoreDataFileTo(2, 'D:oracleproduct10.2.0oradataOra10gUNDOTBS01.DBF', 0, 'UNDOTBS1');

dbms_backup_restore.restoreDataFileTo(3, 'D:oracleproduct10.2.0oradataOra10gSYSAUX01.DBF', 0, 'SYSAUX');

dbms_backup_restore.restoreDataFileTo(4, 'D:oracleproduct10.2.0oradataOra10gUSERS01.DBF', 0, 'USERS');

dbms_output.put_line(' Restoring ... ');

dbms_backup_restore.restoreBackupPiece('D:oracleproduct10.2.0db_1assistantsdbcatemplatesSeed_Database.dfb', done);

if done then

dbms_output.put_line(' Restore done.');

else

dbms_output.put_line(' ORA-XXXX: Restore failed ');

end if;

dbms_backup_restore.deviceDeallocate;

end;

/

select TO_CHAR(systimestamp,'YYYYMMDD HH:MI:SS') from dual;

Allocating device....

Specifying datafiles...

Specifing datafiles...

Restoring ...

Restore done.

PL/SQL过程已成功完成。

Create controlfile reuse set database Ora10g

MAXINSTANCES 8

MAXLOGHISTORY 1

MAXLOGFILES 16

MAXLOGMEMBERS 3

MAXDATAFILES 100

Datafile

'D:oracleproduct10.2.0oradataOra10gSYSTEM01.DBF',

'D:oracleproduct10.2.0oradataOra10gUNDOTBS01.DBF',

'D:oracleproduct10.2.0oradataOra10gSYSAUX01.DBF',

'D:oracleproduct10.2.0oradataOra10gUSERS01.DBF'

LOGFILE GROUP 1 ('D:oracleproduct10.2.0/oradata/Ora10g/redo01.log') SIZE 51200K,

GROUP 2 ('D:oracleproduct10.2.0/oradata/Ora10g/redo02.log') SIZE 51200K,

GROUP 3 ('D:oracleproduct10.2.0/oradata/Ora10g/redo03.log') SIZE 51200K RESETLOGS;

控制文件已创建。

exec dbms_backup_restore.zerodbid(0);

PL/SQL过程已成功完成。

shutdown immediate;

已经卸载数据库。

ORACLE 例程已经关闭。

startup mount;

alter system enable restricted session;

alter database Ora10g open resetlogs; --必须resetlogs因为刚才进行了rman数据恢复

alter database rename global_name to Ora10g;

ALTER TABLESPACE TEMP ADD TEMPFILE 'D:oracleproduct10.2.0oradataOra10gTEMP01.DBF' SIZE 20480K REUSE AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED;

select tablespace_name from dba_tablespaces where tablespace_name='USERS';

alter database character set INTERNAL_CONVERT ZHS16GBK;

alter database national character set INTERNAL_CONVERT AL16UTF16;

alter system disable restricted session;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值