您的位置:首页 > 数据库 > Oracle

[置顶] [实验-视频过程]oracle控制文件增加减少

2015-10-20 15:29 645 查看

控制文件

控制文件是二进制文件

控制文件记录了数据库的结构和行为

在 mount 时候读

在数据库 open 时一直使用

丢失需要恢复


相关字典

select name from v$controlfile;

select TYPE,RECORD_SIZE,RECORDS_TOTAL,RECORDS_USED from V$CONTROLFILE_RECORD_SECTION;
select value from V$spparameter where name='control_files';


控制文件的位置在参数文件中描述

多个控制文件是镜像的关系

最多八个,最少一个

增加控制文件的个数

实验的目的是增加控制文件的个数,1 到 8 个,保护控制文件。

1.修改参数文件

2.停止数据库

3.复制控制文件

4.启动数据库

5.验证,查看 v$controlfile

修改二进制的初始化参数文件中的 control_files 选项

SQL> alter system set control_files=3 scope=spfile;


SQL> select value from v$spparameter where name='control_files';


验证参数文件已经被修改

SQL> select name from v$controlfile;


验证现在内存中的控制文件个数

SQL> alter system set control_files='/u01/app/oracle/oradata/orcl/control01.ctl','/u01/app/oracle/flash_recovery_area/orcl/control02.ctl','/u01/app/oracle/oradata/orcl/control03.ctl' scope=spfile;


SQL> shutdown immediate;


拷贝一个数据库参数文件过去

SQL> host cp /u01/app/oracle/oradata/orcl/control01.ctl /u01/app/oracle/oradata/orcl/control03.ctl


重新启动数据库,使修改的参数起作用

使用操作系统的命令将老的控制文件覆盖

SQL> alter database open;
SQL> alter database mount;
启动到 mount 状态
Database altered.
SQL> alter database open;
启动到 open 状态
Database altered.


验证参数文件中 control_files 选项的值

SQL> select value from v$spparameter where name='control_files';


验证现在内存中的控制文件个数

SQL> select name from v$controlfile;


减少控制文件的个数

该实验的目的是初步认识如何修改参数文件,如何减少控制文件.

减少控制文件,实验的目的,有一个控制文件损坏,我们要将损坏的控制文件剔除。

1.修改参数文件,并验证

2.停止数据库

3.启动数据库

4.验证,查看 v$controlfile

SQL> select  name from v$controlfile;


验证现在内存中的控制文件个数

/u01/app/oracle/oradata/orcl/control01.ctl
/u01/app/oracle/flash_recovery_area/orcl/control02.ctl


修改二进制的初始化参数文件中的 control_files 选项

SQL> alter system set control_files=
2 '/u01/app/oracle/oradata/orcl/control01.ctl' scope=spfile;
System altered.


验证参数文件已经被修改

SQL> select value from v$spparameter where name='control_files';


验证内存中的值没有被修改,因为 control_files 是静态参数,想要改变必须重新启动数据库。

SQL> select name from v$controlfile;


重新启动数据库,使修改的参数起作用

SQL> startup force;

SQL> select name from v$controlfile;


验证内存被修改了

SQL> select value from v$spparameter where name='control_files';


验证参数文件中的值和内存中的值相同

http://v.youku.com/v_show/id_XMTM2NDY3MDg4NA==.html?from=y1.7-1.2
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: