oracle-新增 controlfile 以及重建spfile

huangdazhu發表於2014-03-11

新增controlfile,重新建立spfile
1.編輯init.ora檔案
指定需要新增的控制檔案的路徑
control_files=("/oracle/product/10.1.0/oradata/orcl/control01.ctl",
 "/oracle/product/10.1.0/oradata/orcl/control02.ctl", 
"/oracle/product/10.1.0/oradata/orcl/control03.ctl", 
"/oracle/product/10.1.0/oradata/orcl/control04.ctl")
--新增control04.ctl的路徑
2.建立control04.ctl檔案
/oracle/product/10.1.0/admin/orcl/init.ora --新增controlfile
SQL> shutdown--切換狀態
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> cp /oracle/product/10.1.0/oradata/orcl/control01.ctl /oracle/product/10.1.0/oradata/orcl/control04.ctl
已複製         1 個檔案。

3.使用pflie檔案引導oracle啟動
--系統首選啟動檔案/oracle/product/10.1.0/Db_1/database/spfileorcl.ora
--管理員無法直接更改spfileorcl.ora檔案,只能重新建立
SQL> startup pfile='/oracle/product/10.1.0/admin/orcl/pfile/init.ora.7112011153835';
ORACLE instance started.
Total System Global Area  171966464 bytes
Fixed Size                   787988 bytes
Variable Size             145488364 bytes
Database Buffers           25165824 bytes
Redo Buffers                 524288 bytes
Database mounted.
Database opened.
--controlfile已經新增成功
SQL> select name from v$controlfile;
NAME
--------------------------------------------------------------------------------
/oracle/product/10.1.0/oradata/orcl/CONTROL01.CTL
/oracle/product/10.1.0/oradata/orcl/CONTROL02.CTL
/oracle/product/10.1.0/oradata/orcl/CONTROL03.CTL
/oracle/product/10.1.0/oradata/orcl/CONTROL04.CTL
SQL>
4.重新建立spfile
--(1)oracle使用pfile登入 open狀態建立spfile
SQL> create spfile from pfile='/oracle/product/10.1.0/admin/orcl/pfile/init.ora.7112011153835';
File created.
--(2)nomount 狀態無法建立spflie
--oracle使用pfile登入nomount狀態可以建立spfile
SQL> startup nomount
ORACLE instance started.
Total System Global Area  171966464 bytes
Fixed Size                   787988 bytes
Variable Size             145488364 bytes
Database Buffers           25165824 bytes
Redo Buffers                 524288 bytes
SQL> create spfile from pfile='/oracle/product/10.1.0/admin/orcl/pfile/init.ora.9112013153465';
create spfile from pfile='/oracle/product/10.1.0/admin/orcl/pfile/init.ora.9112013153465'
*
ERROR at line 1:
ORA-32002: cannot create SPFILE already being used by the instance
SQL>
--(3)oracle關閉狀態建立spfile
SQL> shutdown
ORA-01507: database not mounted
ORACLE instance shut down.
SQL> create spfile from pfile='/oracle/product/10.1.0/admin/orcl/pfile/init.ora.9112013153465';
File created.
SQL>

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28869493/viewspace-1107664/,如需轉載,請註明出處,否則將追究法律責任。

相關文章