重建控制文件会导致密码文件发生变化

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

今天在测试的时候发现,Oracle控制文件重建的话,密码文件也会相应的发生变化。

重建控制文件后,虽然密码文件内容没有发生变化。但是密码文件本身的状态已经发生了改变,最明显的一点,就是利用以前的备份进行恢复时,会报密码文件的错误。

首先创建一个备份:

SQL> SELECT 'ALTER TABLESPACE ' TABLESPACE_NAME ' BEGIN BACKUP;' FROM DBA_TABLESPACES

2 WHERE CONTENTS != 'TEMPORARY';

'ALTERTABLESPACE'TABLESPACE_NAME'BEGINBACKUP;'

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

ALTER TABLESPACE SYSTEM BEGIN BACKUP;

ALTER TABLESPACE UNDOTBS1 BEGIN BACKUP;

ALTER TABLESPACE INDX BEGIN BACKUP;

ALTER TABLESPACE TOOLS BEGIN BACKUP;

ALTER TABLESPACE USERS BEGIN BACKUP;

ALTER TABLESPACE YANGTK BEGIN BACKUP;

已选择6行。

SQL> ALTER TABLESPACE SYSTEM BEGIN BACKUP;

表空间已更改。

SQL> ALTER TABLESPACE UNDOTBS1 BEGIN BACKUP;

表空间已更改。

SQL> ALTER TABLESPACE INDX BEGIN BACKUP;

表空间已更改。

SQL> ALTER TABLESPACE TOOLS BEGIN BACKUP;

表空间已更改。

SQL> ALTER TABLESPACE USERS BEGIN BACKUP;

表空间已更改。

SQL> ALTER TABLESPACE YANGTK BEGIN BACKUP;

表空间已更改。

SQL> HOST COPY F:ORACLEORADATATEST*.* F:ORACLEBACKUPTEST20061106

SQL> SELECT 'ALTER TABLESPACE ' TABLESPACE_NAME ' END BACKUP;' FROM DBA_TABLESPACES

2 WHERE CONTENTS != 'TEMPORARY';

'ALTERTABLESPACE'TABLESPACE_NAME'ENDBACKUP;'

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

ALTER TABLESPACE SYSTEM END BACKUP;

ALTER TABLESPACE UNDOTBS1 END BACKUP;

ALTER TABLESPACE INDX END BACKUP;

ALTER TABLESPACE TOOLS END BACKUP;

ALTER TABLESPACE USERS END BACKUP;

ALTER TABLESPACE YANGTK END BACKUP;

已选择6行。

SQL> ALTER TABLESPACE SYSTEM END BACKUP;

表空间已更改。

SQL> ALTER TABLESPACE UNDOTBS1 END BACKUP;

表空间已更改。

SQL> ALTER TABLESPACE INDX END BACKUP;

表空间已更改。

SQL> ALTER TABLESPACE TOOLS END BACKUP;

表空间已更改。

SQL> ALTER TABLESPACE USERS END BACKUP;

表空间已更改。

SQL> ALTER TABLESPACE YANGTK END BACKUP;

表空间已更改。

下面看看重建控制文件后的情况:

SQL> CONN YANGTK/YANGTK@TEST AS SYSDBA

已连接。

SQL> SHUTDOWN IMMEDIATE

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> STARTUP NOMOUNT

ORACLE 例程已经启动。 Total System Global Area 76619308 bytes

Fixed Size 454188 bytes

Variable Size 50331648 bytes

Database Buffers 25165824 bytes

Redo Buffers 667648 bytes

SQL> CREATE CONTROLFILE REUSE DATABASE "TEST" NORESETLOGS ARCHIVELOG

2 -- SET STANDBY TO MAXIMIZE PERFORMANCE

3 MAXLOGFILES 50

4 MAXLOGMEMBERS 5

5 MAXDATAFILES 100

6 MAXINSTANCES 1

7 MAXLOGHISTORY 680

8 LOGFILE

9 GROUP 1 'F:ORACLEORADATATESTREDO01.LOG' SIZE 100M,

10 GROUP 2 'F:ORACLEORADATATESTREDO02.LOG' SIZE 100M,

11 GROUP 3 'F:ORACLEORADATATESTREDO03.LOG' SIZE 100M

12 -- STANDBY LOGFILE

13 DATAFILE

14 'F:ORACLEORADATATESTSYSTEM01.DBF',

15 'F:ORACLEORADATATESTUNDOTBS01.DBF',

16 'F:ORACLEORADATATESTINDX01.DBF',

17 'F:ORACLEORADATATESTTOOLS01.DBF',

18 'F:ORACLEORADATATESTUSERS01.DBF',

19 'F:ORACLEORADATATESTYANGTK01.DBF'

20 CHARACTER SET ZHS16GBK

21 ;

控制文件已创建

SQL> ALTER DATABASE OPEN;

数据库已更改。

这个时候,密码文件已经被修改。从操作系统中文件的信息也可以看到,文件最后修改时间就是控制文件的重建时间。

这个时候,假如需要利用以前的备份恢复数据库,那么就需要重建密码文件:

SQL> SHUTDOWN IMMEDIATE

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> HOST COPY F:ORACLEBACKUPTEST20061106*.CTL F:ORACLEORADATATEST

SQL> HOST COPY F:ORACLEBACKUPTEST20061106*.LOG F:ORACLEORADATATEST

SQL> HOST COPY F:ORACLEBACKUPTEST20061106*.DBF F:ORACLEORADATATEST

SQL> STARTUP MOUNT

ORACLE 例程已经启动。

Total System Global Area 76619308 bytes

Fixed Size 454188 bytes

Variable Size 50331648 bytes

Database Buffers 25165824 bytes

Redo Buffers 667648 bytes

ORA-01991: ???????'F:oracleoracle920DATABASEPWDtest.ORA'

SQL> SHUTDOWN

ORA-01109: ??????

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> HOST DEL F:ORACLEORACLE920DATABASEPWDTEST.ORA

SQL> HOST ORAPWD FILE=F:ORACLEORACLE920DATABASEPWDTEST.ORA PASSWord=TEST

SQL> STARTUP MOUNT

ORACLE 例程已经启动。

Total System Global Area 76619308 bytes

Fixed Size 454188 bytes

Variable Size 50331648 bytes

Database Buffers 25165824 bytes

Redo Buffers 667648 bytes

数据库装载完毕。

SQL> RECOVER DATABASE;

完成介质恢复。

SQL> ALTER DATABASE OPEN;

数据库已更改。

密码文件由于可以方便的重建,因此,很少包括在备份集中,不过由于存在上述问题,进行全备份的时候,不妨同时备份当时的密码文件,可以避免产生错误。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航