oracle10g 歸檔模式和非歸檔模式的轉換

lnwxzyp發表於2009-07-30
oracle10g的 歸檔模式和非歸檔模式的轉換,相比9i要簡單一些,不需要進行引數的修改,接下來需要將資料庫down掉,一個好的習慣是 首先檢視還有沒有正在執行的會話,如果有的話先殺掉會話
SELECT T2.USERNAME,
T2.SID, T2.SERIAL#,
T2.LOGON_TIME,T3.OBJECT_NAME FROM
V$LOCKED_OBJECT T1, V$SESSION T2 ,ALL_OBJECTS T3
WHERE T1.SESSION_ID = T2.SID AND T1.OBJECT_ID=T3.OBJECT_ID ORDER BY T2.LOGON_TIME
alter system kill session 'SID,SERIAL#';
 commit;
然後停掉監聽器,這樣就沒有新的會話可以訪問資料庫了,
C:\Users\security>LSNRCTL STOP
然後就可以停掉資料庫了
SQL> shutdown immediate
停掉之後將資料庫轉到mount模式
SQL> startup mount
SQL>alter database archivelog;   ----由非歸檔轉換為歸檔模式
或者
SQL>alter database noarchivelog;  ----由歸檔轉換為非歸檔模式
然後
SQL>alter database open   -----開打資料庫就可以了
 
如果要啟用歸檔,而且要對歸檔日誌的路徑進行改動的話,那麼就需要將D:\oracle\product\10.2.0\admin\demo\pfile\ 資料夾下的init.ora.624200903928檔案 複製一份, 重新命名為init.ora,然後在其中增加如下一行 log_archive_dest_1='LOCATION=E:\oradata\archivelog\',如果你本來就是歸檔模式的話,你可以從init.ora檔案中找到如下一段
###########################################
# Archive
###########################################
log_archive_format=ARC%S_%R.%T
那樣的話 直接在 裡面增加一行 log_archive_dest_1='LOCATION=E:\oradata\archivelog\' 也就可以了
 
然後在down機之後
SQL> create spfile='E:\oracle\product\10.2.0\db_1\database\SPFILEDEMO.ORA' from
pfile='E:\oracle\product\10.2.0\admin\msjf\pfile\init.ora';
檔案已建立。
SQL> startup nomount
ORACLE 例程已經啟動。
Total System Global Area 1.2482E+10 bytes
Fixed Size                  2025432 bytes
Variable Size            1711278120 bytes
Database Buffers         1.0754E+10 bytes
Redo Buffers               14749696 bytes
SQL> alter database mount;
資料庫已更改。
SQL> alter database archivelog;
資料庫已更改。
SQL> alter database open;
資料庫已更改。
 
接近一個多月沒寫東西了,看來有點懶散了,要加油哦。

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

相關文章