视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Oracle控制文件基本维护
2020-11-09 12:45:31 责编:小采
文档


控制文件记录着数据库的重要信息,包括例如数据库标识(参数DB_NAME或者在使用CREATE DATABASE 语句创建时使用的名称)、数据文件和

控制文件记录着数据库的重要信息,包括例如数据库标识(参数DB_NAME或者在使用CREATE DATABASE 语句创建时使用的名称)、数据文件和重做日志文件的名称与位置、创建数据库的时间戳、添加或删除表空间信息、检查点信息、归档信息、备份信息等等,如果在打开的时候没有控制文件将会失败,如果在运行过程中控制文件出现异常那么数据库将立即崩溃,,由此可见控制文件是多么重要,控制文件只能有Oracle服务器来操作读写。控制文件建议做多路副本和备份。动态性能视图V$CONTROLFILE_RECORD_SECTION记录着控制文件包含的内容和信息,其他的一些性能视图比如V$DATAFILE、V$LOG等等将会从该视图获取必要的信息。
0. 如何增加一个控制文件
sys@ > column name format a50
sys@ > show parameter control

NAME TYPE VALUE
------------------------------------ -------- ------------------------------
control_file_record_keep_time integer 7
control_files string /u01/oracle/9i/oradata/gt9i/co
ntrol01.ctl, /u01/oracle/9i/or
adata/gt9i/control02.ctl, /u01
/oracle/9i/oradata/gt9i/contro
l03.ctl
sys@ > select * from v$controlfile;

STATUS NAME
------- --------------------------------------------------
/u01/oracle/9i/oradata/gt9i/control01.ctl
/u01/oracle/9i/oradata/gt9i/control02.ctl
/u01/oracle/9i/oradata/gt9i/control03.ctl

sys@ > create pfile='/u01/oracle/gt9i.ora' from spfile;

File created.

sys@ > shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
然后通过操作系统命令复制一个现有的控制文件,修改pfile增加新的控制文件位置即可:
[oracle@ gt9i]$ ll control*
-rw-r----- 1 oracle oinstall 2023424 4月 11 15:06 control01.ctl
-rw-r----- 1 oracle oinstall 2023424 4月 11 15:06 control02.ctl
-rw-r----- 1 oracle oinstall 2023424 4月 11 15:06 control03.ctl
[oracle@ gt9i]$ cp control01.ctl controlTEST.ctl
[oracle@ gt9i]$ ll control*
-rw-r----- 1 oracle oinstall 2023424 4月 11 15:06 control01.ctl
-rw-r----- 1 oracle oinstall 2023424 4月 11 15:06 control02.ctl
-rw-r----- 1 oracle oinstall 2023424 4月 11 15:06 control03.ctl
-rw-r----- 1 oracle oinstall 2023424 4月 11 15:23 controlTEST.ctl
vi /u01/oracle/gt91.ora
修改控制文件配置成如下:
*.control_files='/u01/oracle/9i/oradata/gt9i/controlTEST.ctl','/u01/oracle/9i/oradata/gt9i/control01.ctl','/u01/oracle/9i/oradata/gt9i/control02.ctl','/u01/oracle/9i/oradata/gt9i/control03.ctl'
上述第1个就是我们刚刚添加的控制文件,现在可以使用pfile来打开数据库。
sys@ > startup pfile='/u01/oracle/gt9i.ora'
ORACLE instance started.

Total System Global Area 286752136 bytes
Fixed Size 740744 bytes
Variable Size 150994944 bytes
Database Buffers 134217728 bytes
Redo Buffers 798720 bytes
Database mounted.
Database opened.
sys@ > show parameter control

NAME TYPE VALUE
------------------------------------ -------- ------------------------------
control_file_record_keep_time integer 7
control_files string /u01/oracle/9i/oradata/gt9i/co
ntrolTEST.ctl, /u01/oracle/9i/
oradata/gt9i/control01.ctl, /u
01/oracle/9i/oradata/gt9i/cont
rol02.ctl, /u01/oracle/9i/orad
ata/gt9i/control03.ctl
sys@ > select * from v$controlfile;

STATUS NAME
------- --------------------------------------------------
/u01/oracle/9i/oradata/gt9i/controlTEST.ctl
/u01/oracle/9i/oradata/gt9i/control01.ctl
/u01/oracle/9i/oradata/gt9i/control02.ctl
/u01/oracle/9i/oradata/gt9i/control03.ctl
可以看到现在在用的控制文件有了4个。
1. 如何删除一个控制文件
增加控制文件的一个反转操作即可。略。
2. 如何备份控制文件
两种方式备份,备份为trace文本文件,可以使用文本编辑器打开直接编辑;或者备份为二进制文件。
sys@ > alter database backup controlfile to trace as '/u01/oracle/gt9icontrol.trc';

Database altered.

sys@ > alter database backup controlfile to '/u01/oracle/gt9icontrol.ctl';

Database altered.

下载本文
显示全文
专题