Oracle 9i 數據庫移動過程
2024-08-29 13:31:31
供稿:網友
oracle 9i 數據庫移動過程
作者:未知
數據庫移動,在項目實施過程中,經常會發生,對于有經驗的dba來說,數據庫移動是十分容易。但對于一些只了解系統,對數據庫不是十分懂的人員來說,oracle的移動就不是那么容量了。
例如當系統安裝完成以后,存儲空間擴容了,需要對原對oracle進行移動,需要進行數據移動。以前在oracle8i for windows 2000中是可以進行移動的。現在oracle9i for aix 5l 的移動如何做呢???其實經對各種不同的平臺,操作過程完全一樣。
一、復制移動數據文件
1)、獲取數據庫相關信息
首先要查看一下數據庫的文件內容:
sqlplus “ / as sysdba”
? select * from v$datafile;
? select * from v$controlfile
? select * from v$logfile;
2)、移動應用數據文件
shutdown immediate關閉數據庫,拷貝數據文件到另外一個目錄下。需要copy 的文件有:
system01.dbf
indx01.dbf
temp01.dbf
users01.dbf
應用數據文件
3)、 修改數據庫文件的位置
啟動mount模式
? startup mount;
? alter database rename file ‘/oracle/oradata/ocp ystem01.dbf' to ‘/oradata/ocp ystem01.dbf”
? alter database rename file ‘/oracle/oradata/ocp/indx01.dbf' to ‘/oradata/ocp/indx01.dbf';
注意只能進行更改移動的數據庫文件,不包括控制文件與日志文件,temp文件。
二. 移動控制文件
(1)備份spfile中的內容:
再重新啟動數據庫:
? startup;
? create pfile='c:/init.ora' from spfile;
(2)修改init.ora文件中的內容:
*.control_files='/oradata/ocp/control01.ctl','/oradata/ocp/control02.ctl','/oradata/ocp/control03.ctl'
進行更改已經復制的目錄位置。
shutdown 數據庫
(3)將控制文件復制過去,
將三個控制文件移動到上面所修改的的目錄下。
(4) 倒入參數文件
以init.ora參數方式啟動:
? startup pfile='/oracle/init.ora';
? create spfile from pfile='/oracle/init.ora';
? shutdown immediate;
? startup; 從spfile中進行啟動。
這樣控制文件移動工作就結束了。
三、 重建或重定位log文件
解決日志文件的移動方式有兩種,一種是移動(rename方式)另一種是重新創建。
(1)移動log文件
重新移動數據庫文件與移動系統數據庫文件是一樣的方法,只是要求數據庫必須是“startup mount”方式進行。
? startup mount
? alter database rename file ‘/oracle/oradata/oralog1.ora' to ‘/oradata/ocp/oralog1.dbf'
樣
(2)重建log文件
先重建一個組group ,并添加一個log文件作為交換文件。
alter database add logfile group 4 ('$home/oradata/u01/log4.rdo','$home/oradata/u02/log4.rdo') size 1m;
然后再刪除其它的log組,要求必須保持有兩個log文件組在系統中。
alter database drop logfile member ‘/oracle/oradata/ocp/oralog01.ora'
四、重建系統監時(temp)文件系統
在移動數據表空間時,temp文件是不能被移動的,這里要求可以進行重建一個temp表空間,并設置為系統默認的temp文件系統。然后再冊除原來的temp表空間,達到移動表空間的過程。
> create temporary tablespace “temp02” tempfile ‘/oradata/ocp/temp02.dbf' size 500m extent management local uniform size 10m;
然后再刪除原來的temp文件就可以了。
五、測試數據庫
進行重啟動oracle數據
$ sqlplus “/as sysdba”
? startup;
? show sga;
?
本文來源于網頁設計愛好者web開發社區http://www.html.org.cn收集整理,歡迎訪問。