control file(控制文件)

来源:互联网 发布:淘宝有卖精仿手表 编辑:程序博客网 时间:2024/05/05 20:21

每个oracle数据库都有控制文件。控制文件是一个小的二进制文件,记录了数据库的物理结构,包括了

数据库的名字;

相关的数据文件和在线重做日志文件的名字和位置;

数据库创建时候的时间戳;

当前日志的序列号;

检查点信息;


何时创建控制文件

当以下情况下需要创建控制文件

1. 当数据库所有的控制文件都永久的算坏了并且你没有控制文件的备份;

2. 当你要修改创建数据库时指定的参数的时候

创建控制文件的例子

CREATE CONTROLFILE   SET DATABASE prod   LOGFILE GROUP 1('/u01/oracle/prod/redo01_01.log',                   '/u01/oracle/prod/redo01_02.log'),           GROUP 2('/u01/oracle/prod/redo02_01.log',                   '/u01/oracle/prod/redo02_02.log'),           GROUP 3('/u01/oracle/prod/redo03_01.log',                   '/u01/oracle/prod/redo03_02.log')   NORESETLOGS   DATAFILE'/u01/oracle/prod/system01.dbf' SIZE 3M,           '/u01/oracle/prod/rbs01.dbs' SIZE 5M,           '/u01/oracle/prod/users01.dbs' SIZE 5M,            '/u01/oracle/prod/temp01.dbs'SIZE 5M   MAXLOGFILES 50   MAXLOGMEMBERS 3   MAXLOGHISTORY 400   MAXDATAFILES 200   MAXINSTANCES 6   ARCHIVELOG;


创建新控制文件的步骤

1.列出所有的数据文件和在线重做日志文件

Select member from v$logfile;

Select name from v$datafile;

Select value from v$parameter where name =‘control_files’;

 

2. 关闭数据库

If the database is open, shut down thedatabase normally if possible. Use the IMMEDIATE or ABORT options only as alast resort.

3. 备份所有的数据文件和在线重做日志文件

4. startup mount

5.使用create controlfile语句创建新的控制文件

6. 恢复新建控制文件的一个备份到离线的存储设备上。关于控制文件的备份

备份到一个二进制文件

 

Alter database backup controlfile to‘path_name’;

备份到trace文件

Alter database backup controlfile to trace;

 

7. 编辑control_file的初始化参数指出所有的控制文件作为你数据库的一部分;

8.Recover database;

9. Open the database using one of the following methods:

    *If you did not perform recovery, or you performed complete, closed databaserecovery in Step 8, open the database normally.

     ALTER DATABASE OPEN;

    *If you specified RESETLOGS when creating the control file, use the ALTER DATABASEstatement, indicating RESETLOGS.

     ALTER DATABASE OPEN RESETLOGS;

删除控制文件

1 关闭数据库

2 修改数据库的初始化参数,删除旧的控制文件的名字;

3 重新启动数据库;


列出控制文件信息的视图

The following views display informationabout control files:

View

 V$DATABASE

Displays database information from thecontrol file


V$CONTROLFILE   

Lists the names of control files


V$CONTROLFILE_RECORD_SECTION

Displays information about control filerecord sections


V$PARAMETER

Can be used to display the names of controlfiles as specified in the CONTROL_FILES initialization parameter



原创粉丝点击