NO.1

1.控制文件的位置

select name from v$controlfile;

2.控制文件的格式为trl二进制文件

3.创建一个控制文件

1)获取数据文件和重做日志文件列表

控制文件:select name from v$datafile;

日志文件:select member from v$logfile;

2)关闭数据库shutdown immediate

3)备份所有的数据文件和重做日志

4)启动数据库到:sartup nomount

5)创建数据文件:create controlfile

reuse database database_name noresetlogs|resetlogs noarchivelog|archivelog

maxlogfiles //最大日志文件的大小

maxlogmenbers //日志文件组的成员数

maxinstances //最大实例个数

maxloghistroy //最大历史日志文件个数

logfile //指定日志文件的位置和名称

group 1 'logfile_name 1' size size,

...

datafile // 指定数据文件的名称和位置

‘datafile_name1',

....

character set zhs16gbk //指定字符集

6)修改control_file参数 使其指向新建的控制文件 如果修改了数据库名称还需修改db_name参数

alter system set control_files=

'controlfile_name1',

....

scope=spfile;

7)alter database open; 如果需要恢复数据库的话需要执行

8)使用了resetlogs 则执行 alter database open resetlogs;

4.控制文件的备份

复制控制文件 alter database backup controlfile to

'/data/oracle/control_01';

将控制文件备份为可读文件:alter database backup controlfile to trace;

5.控制文件的恢复

如果控制文件被破坏,但存储控制文件的目录仍然可以访问,并且存在控制文件副本,则可以关闭数据库实例,然后使用操作系统将控制文件副本复制到控制文件目录下,覆盖被损坏的控制文件,然后重启数据库。

6.删除控制文件

1)关闭数据库

2)编辑初始化参数control_files.使其不再包含要删除的控制文件的名称;

3)重启数据库

7.查看控制文件信息

与控制文件有关的数据字典视图

v$database //显示控制文件描述的数据库信息

v$controlfile //显示控制文件的名称和状态信息

v$controlfile_record_section //显示控制文件各个记录的信息

v$parameter //显示初始化参数controlfile_files中的控制文件名称

  • 发表于:
  • 原文链接:https://kuaibao.qq.com/s/20180815G16FBM00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券