控制文件多工

简介: <div style="font-family:'lucida Grande',Verdana,'Microsoft YaHei'; line-height:23.8px"> <span style="font-size:18px; color:#3366ff"><strong><span style="white-space:pre"></span>Oracle之控制文件</stron
Oracle之控制文件
 

基于服务器参数文件(SPFILE)与初始化参数两个启动文件的不同,所以在为控制文件建立多工的操作也存在差异,首先,我们介绍下在Spfile启动的情况下,为控制文件建立多工的操作:

这里我准备了两个磁盘:一个是oracle安装的磁盘(SDA1),另外一个是已经格式化好的测试的磁盘(SDB1)

在SPFILE的环境下建立多工的步骤有四步:

1、修改SPFILE参数文件里的内容;2、shutdown 数据库;3、做物理控制文件的copy;4、startup数据库,检查结果;

SQL<  alter system set control_files='/mnt/sdb1/opt/oradata/kwen/ctl_01.ctl', 
  2   '/mnt/sdb1/opt/oradata/kwen/ctl_02.ctl',
  3  '/opt/oracle/oradata/kwen/control_01.ctl',
  4 '/opt/oracle/oradata/kwen/control_02.ctl',
  5 '/opt/oracle/oradata/kwen/control_03.ctl'
  6 scope=spfile;

System altered.


[oracle@localhost kwen]$ cp /opt/oracle/oradata/kwen/control_01.ctl /mnt/sdb1/opt/oradata/kwen/ctl_01.ctl
[oracle@localhost kwen]$ cp /opt/oracle/oradata/kwen/control_01.ctl /mnt/sdb1/opt/oradata/kwen/ctl_02.ctl
[oracle@localhost kwen]$ exit
exit

这样控制文件就创建成功了,并且移植到了不同的磁盘上。

一、控制文件:二进制文件定义当前Database的状态,它是连接Database和实例的桥梁。如果控制文件被损坏,系统一定要做requires recovery介质恢复。在MOUNT状态时读控制文件,在数据库操作时控制文件也是必须的。在任何时候,控制文件都应是可用的,控制文件可以维护database的完整性。通常应做控制文件的多工。
 
二、控制文件所记录的内容:
sql> startup
sql> set wrap off
sql> set linesize 200
sql> select * from v$database //数据库名name和id,创建时间
sql> select * from v$tablespace //表空间名
sql> select * from v$logfile //日志文件相关信息和位置
sql> select * from v$log //当前重做日志文件的序列号(current)
sql> select * from v$backup //备份信息
sql> alter tablespace users
begin backup;//当前数据进入备份状态
sql> select * from v$archived_log; //归档日志文件
 
三、控制文件多工的两种方式:SPFILE 和init.ora(多工是为了保证Database可以连续的运作)
1.SPFILE方式:
sql> show parameter spfile //显示spfile
sql> select * from v$controlfile; //显示控制文件
sql> alter system set control_files='D:\ORACLE\ORADATA\FOX\CONTROL01.CTL','D:\ORACLE\ORADATA\FOX\CONTROL02.CTL',
'D:\ORACLE\ORADATA\FOX\CONTROL03.CTL','D:\ORACLE\ORADATA\FOX\CONTROL04.CTL' scope=spfile;
(1)正常关闭数据库:
sql> shutdown immediate
(2)创建额外的物理文件(拷贝):CONTROL04.CTL
(3)重启:
sql> conn sys/admin@fox as sysdba
sql> startup //重启例程。
sql> select * from v$controlfile
 
2.init.ora 方式(多工控制文件):
(1)关闭数据库:
sql> shutdown immediate
(2)拷贝创建一个额外的物理控制文件:CONTROL04.CTL
$ cp control04.ctl... /DISK3/control02.ctl
(3)修改oracle\admin\fox\spfile\init.ora文件:control_files=...
后插入'D:\ORACLE\ORADATA\FOX\CONTROL04.CTL'
(4)重启
sql> startup pfile=d:\oracle\ora90\database\initfox.ora
 
四、使用OMF管理控制文件:
OMF控制文件位于DB_CREATE_ONLINE_LOG_DEST_N,控制文件创建时唯一的命名信息记录在alertSID.log文件中。
 
 
五、获取控制文件相关信息:
sql> select * from v$controlfile;
sql> select * from v$parameter where name like 'control%';
sql> show parameter control;
sql> select * from v$controlfile_record_section //显示控制文件记录的信息
sql> show parameters control_files; //列表显示控制文件name,status,location
 
六、如何对正在运行的Oracle数据库做动态备份:
sql> alter database backup controlfile to 'c:\control.bak' //直接备份到备份文件中
sql> alter database backup controlfile to trace; //备份信息转换为创建控制文件的脚本信息文件
sql> show parameter user_dump 可以查询创建的该脚本文件所在位置。(d:\oracle\admin\fox\udump\..dbf)
目录
相关文章
|
12月前
|
SQL Oracle 关系型数据库
3、控制文件的备份与恢复
控制文件的备份与恢复
95 0
|
SQL Oracle 关系型数据库
Oracle中如何备份控制文件?备份控制文件的方式有哪几种?
Oracle中如何备份控制文件?备份控制文件的方式有哪几种?
284 0
|
监控
rman 恢复部分归档日志
rac 数据库在恢复部分归档日志的时候,需要指定数据库的线程编号。
1863 0
|
存储 Oracle 关系型数据库
|
SQL Oracle 关系型数据库
|
Oracle 关系型数据库 数据库