CTOCIO IT专家网

天极传媒 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
IT专家网搜索

数据库 | Oracle | DB2 | SQL Server | MySQL | 商业智能 | BI | DBA | Sybase| SQL Server 2008

您现在的位置: IT专家网 > 数据库子站 > 数据库技巧

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

作者: yangtingkun,  出处:itpub, 责任编辑: jinpu, 
2006-11-17 07:00
  今天在测试的时候发现,Oracle控制文件重建的话,密码文件也会相应的发生变化。   重建控制文件后,虽然密码文件内容没有发生变化。但是密码文件本身的状态已经发生了改变,最明显的一点,就是利用以前的备份进行恢复时,会报密码文件的错误。

  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;

  数据库已更改。

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


  阅读关于 控制文件 密码文件 Oracle 数据库 的全部文章
共2页。 9 1 2

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。
  • 周排行榜
  • 月排行榜

邮件订阅


    

该文章的读者还阅读了

天极服务 | 关于我们 | 网站律师 | 加入我们 | 联系我们 | 广告业务 | 友情链接 | 我要挑错
All Rights Reserved, Copyright 2004-2008, Ctocio.com.cn
渝ICP证B2-20030003号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i