ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 控制文件维护(二)

控制文件维护(二)

原创 Linux操作系统 作者:pingley 时间:2012-03-04 15:52:01 0 删除 编辑
控制文件维护(二)
添加控制文件副本,控制文件的重命名,删除控制文件:
为了添加控制文件副本,或者重命名现有的控制文件,或者将现有的控制文件挪到其他地方的步骤:
1、先关闭数据库。以保证在复制,移动,重命名控制文件的过程中保持控制文件信息的一致性,并且避免因为这些操作导致的故障。
2、将控制文件复制到其他位置、或者将现有重命名。
3、编辑初始化参数文件中的control_files 添加新控制文件的位置名称,或者重命名现有控制文件的名称。
4、重启数据库。
注:如果有必要删除控制文件,方法与上面的相同,就是把某个控制文件项目从参数control_files中移除。实际要删除某个控制文件需要使用操作系统命令(rm)。
先查看原来数据库中控制文件的信息。
SQL> show parameter control_files
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
control_files                        string      /opt/oracle11g/oradata/oracl/c
                                                 ontrol01.ctl, /opt/oracle11g/ora
                                                 data/oracl/control02.ctl
先关闭数据库。
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
在操作系统上进行控制文件的复制与重命名等工作。
[oracle@zeng ~]$ cd /opt/oracle11g/oradata/oracl
[oracle@zeng oracl]$ ll control0*
-rw-r-----. 1 oracle oinstall 9748480 Mar  4 00:29 control01.ctl
-rw-r-----. 1 oracle oinstall 9748480 Mar  4 00:29 control02.ctl
复制一份控制文件到其他位置,并修改复制来的控制文件名。
[oracle@zeng oracl]$ cp control01.ctl /home/oracle/backup
[oracle@zeng oracl]$ cd
[oracle@zeng ~]$ cd backup
[oracle@zeng backup]$ ll
total 19040
-rw-r-----. 1 oracle oinstall 9748480 Mar  4 00:35 control01.ctl
-rw-r-----. 1 oracle oinstall 9748480 Mar  3 22:36 control.bk
[oracle@zeng backup]$ mv control01.ctl control03.ctl
[oracle@zeng backup]$ ll
total 19040
-rw-r-----. 1 oracle oinstall 9748480 Mar  4 01:14 control03.ctl
-rw-r-----. 1 oracle oinstall 9748480 Mar  3 22:36 control.bk
修改原来control_files 中control01.ctl为control.ctl
[oracle@zeng oracl]$ mv control01.ctl control.ctl
[oracle@zeng oracl]$ ll control*
-rw-r-----. 1 oracle oinstall 9748480 Mar  4 00:29 control02.ctl
-rw-r-----. 1 oracle oinstall 9748480 Mar  4 00:29 control.ctl
启动数据库到nomount
SQL> startup nomount     
ORACLE instance started.
Total System Global Area  418484224 bytes
Fixed Size                  1336932 bytes
Variable Size             222300572 bytes
Database Buffers          188743680 bytes
Redo Buffers                6103040 bytes
SQL> show parameter spfile   
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
spfile                               string      /opt/oracle11g/product/11.2.0/
                                                 dbhome_1/dbs/spfileoracl.ora
从spfile文件创建pfile文件
SQL> create pfile from spfile;
File created.
SQL> shutdown immediate
ORA-01507: database not mounted
ORACLE instance shut down.
在操作系统上编辑刚才创建的pfile
[oracle@zeng dbs]$ find . -cmin -4
.
./initoracl.ora
[oracle@zeng dbs]$ vi initoracl.ora 
把control_files参数的值修改成下面的样式。
control_files='/opt/oracle11g/oradata/oracl/control.ctl',
'/opt/oracle11g/oradata/oracl/control02.ctl',
'/home/oracle/backup/control03.ctl'
用刚才创建的pfile文件来启动数据库到nomount。
SQL> startup nomount pfile=/opt/oracle11g/product/11.2.0/dbhome_1/dbs/initoracl.ora
ORACLE instance started.
Total System Global Area  418484224 bytes
Fixed Size                  1336932 bytes
Variable Size             222300572 bytes
Database Buffers          188743680 bytes
Redo Buffers                6103040 bytes
SQL> show parameter spfile
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
spfile                               string
从pfile创建spfile。
SQL> create spfile from pfile;
File created.
SQL> shutdown immediate
ORA-01507: database not mounted
ORACLE instance shut down.
重启数据库到open,这时候使用的是刚才创建的spfile。
SQL> startup 
ORACLE instance started.
Total System Global Area  418484224 bytes
Fixed Size                  1336932 bytes
Variable Size             222300572 bytes
Database Buffers          188743680 bytes
Redo Buffers                6103040 bytes
Database mounted.
Database opened.
SQL> show parameter spfile
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
spfile                               string      /opt/oracle11g/product/11.2.0/
                                                 dbhome_1/dbs/spfileoracl.ora
确定控制文件的修改。
SQL> show parameter control_files
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
control_files                        string      /opt/oracle11g/oradata/oracl/c
                                                 ontrol.ctl, /opt/oracle11g/ora
                                                 data/oracl/control02.ctl, /hom
                                                 e/oracle/backup/control03.ctl

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26110315/viewspace-717646/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2012-02-06

  • 博文量
    169
  • 访问量
    741717