oracle遷移,資料檔案路徑改變win-to-win

chicken0915發表於2012-07-12

ORACLE 10g將資料檔案,日誌檔案和控制檔案遷移到不同的路徑

(2006-11-18 11:17:42)

轉載

標籤:

雜談

分類: 計算機與 Internet

 

 

      資料檔案,控制檔案和日誌檔案原路徑在:"d:\oracle\10g\orcl",現在要將它們遷移至“d:\oracle\database\orcl”中。具體操作截圖如下:
資料檔案遷移:
SQL> select name,file# from v$datafile;

NAME
--------------------------------------------------------------------------------

     FILE#
----------
D:\ORACLE\10G\ORCL\SYSTEM01.DBF
         1

D:\ORACLE\10G\ORCL\UNDOTBS01.DBF
         2

D:\ORACLE\10G\ORCL\SYSAUX01.DBF
         3


NAME
--------------------------------------------------------------------------------

     FILE#
----------
D:\ORACLE\10G\ORCL\USERS01.DBF
         4


SQL> shutdown immediate
資料庫已經關閉。
已經解除安裝資料庫。
ORACLE
例程已經關閉。
SQL> $move d:\oracle\10g\orcl\system01.dbf d:\oracle\database\orcl\system01.dbf

SQL> $move d:\oracle\10g\orcl\undotbs01.dbf d:\oracle\database\orcl\undotbs01.db
f

SQL> $move d:\oracle\10g\orcl\sysaux01.dbf d:\oracle\database\orcl\sysaux01.dbf

SQL> $move d:\oracle\10g\orcl\users01.dbf d:\oracle\database\orcl\users01.dbf

SQL> startup mount
ORACLE
例程已經啟動。

Total System Global Area  167772160 bytes
Fixed Size                  1247900 bytes
Variable Size              92276068 bytes
Database Buffers           71303168 bytes
Redo Buffers                2945024 bytes
資料庫裝載完畢。
SQL> alter database
  2  rename file
  3  'd:\oracle\10g\orcl\system01.dbf',
  4  'd:\oracle\10g\orcl\undotbs01.dbf',
  5  'd:\oracle\10g\orcl\sysaux01.dbf',
  6  'd:\oracle\10g\orcl\users01.dbf'
  7  to
  8  'd:\oracle\database\orcl\system01.dbf',
  9  'd:\oracle\database\orcl\undotbs01.dbf',
10  'd:\oracle\database\orcl\sysaux01.dbf',
11  'd:\oracle\database\orcl\users01.dbf';

資料庫已更改。

SQL> alter database open
  2  ;

資料庫已更改。
SQL> select name,status from v$datafile;

NAME
------------------------------------------

STATUS
-------
D:\ORACLE\DATABASE\ORCL\SYSTEM01.DBF
SYSTEM

D:\ORACLE\DATABASE\ORCL\UNDOTBS01.DBF
ONLINE

D:\ORACLE\DATABASE\ORCL\SYSAUX01.DBF
ONLINE


NAME
------------------------------------------

STATUS
-------
D:\ORACLE\DATABASE\ORCL\USERS01.DBF
ONLINE


日誌檔案遷移
SQL> select * from v$log;

    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARC STATUS
---------- ---------- ---------- ---------- ---------- --- ----------------
FIRST_CHANGE# FIRST_TIME
------------- --------------
         1          1          2   52428800          1 NO  CURRENT
       542677 07-11
-06

         2          1          0   52428800          1 YES UNUSED
            0

         3          1          1   52428800          1 YES INACTIVE
       534907 07-11
-06


SQL> select * from v$logfile;

    GROUP# STATUS  TYPE
---------- ------- -------
MEMBER
--------------------------------------------------------------------------------

IS_
---
         3         ONLINE
D:\ORACLE\10G\ORCL\REDO03.LOG
NO

         2         ONLINE
D:\ORACLE\10G\ORCL\REDO02.LOG
NO

    GROUP# STATUS  TYPE
---------- ------- -------
MEMBER
--------------------------------------------------------------------------------

IS_
---

         1         ONLINE
D:\ORACLE\10G\ORCL\REDO01.LOG
NO


SQL> alter system switch logfile;

系統已更改。

SQL> shutdown immediate
資料庫已經關閉。
已經解除安裝資料庫。
ORACLE
例程已經關閉。
SQL> $ move d:\oracle\10g\orcl\redo01.log d:\oracle\database\orcl\redo01.log

SQL> $ move d:\oracle\10g\orcl\redo02.log d:\oracle\database\orcl\redo02.log

SQL> $ move d:\oracle\10g\orcl\redo03.log d:\oracle\database\orcl\redo03.log

SQL> startup mount
ORACLE
例程已經啟動。

Total System Global Area  167772160 bytes
Fixed Size                  1247900 bytes
Variable Size              96470372 bytes
Database Buffers           67108864 bytes
Redo Buffers                2945024 bytes
資料庫裝載完畢。
SQL> alter database
  2  rename file
  3  'd:\oracle\10g\orcl\redo01.log',
  4  'd:\oracle\10g\orcl\redo02.log',
  5  'd:\oracle\10g\orcl\redo03.log'
  6  to
  7  'd:\oracle\database\orcl\redo01.log',
  8  'd:\oracle\database\orcl\redo02.log',
  9  'd:\oracle\database\orcl\redo03.log';

資料庫已更改。

SQL> alter database open
  2  ;

資料庫已更改。

SQL> alter system switch logfile;

系統已更改。

SQL> select * from v$logfile;

    GROUP# STATUS  TYPE
---------- ------- -------
MEMBER
--------------------------------------------------------------------------------

IS_
---
         3         ONLINE
D:\ORACLE\DATABASE\ORCL\REDO03.LOG
NO

         2         ONLINE
D:\ORACLE\DATABASE\ORCL\REDO02.LOG
NO

    GROUP# STATUS  TYPE
---------- ------- -------
MEMBER
--------------------------------------------------------------------------------

IS_
---

         1         ONLINE
D:\ORACLE\DATABASE\ORCL\REDO01.LOG
NO


控制檔案遷移

將資料庫SHUTDOWN,然後修改pfile中的控制檔案的路徑,以pfile檔案啟動資料庫,
然後create spfile from pfile.最後以spfile啟動資料庫即可。

ORA-01078 & LRM-00109

 

錯誤資訊:

SQL> startup
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/opt/oracle/products/10.1.0.3/db_1/dbs/initrawdb.ora'


解決辦法:

cp $ORACLE_BASE/admin/$ORACLE_SID/pfile/init.ora /opt/oracle/products/10.1.0.3/db_1/dbs/initrawdb.ora

 

 注:Oracle在啟動過程中,需要讀取引數檔案(pfile/spfile)來建立例項.Oracle在啟動過程中,尋找引數檔案的順序為:spfile.ora,spfile.ora,init.ora.   

 

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

相關文章