淺陋見解,僅供參考。拋磚引玉,多加指教!
          石正
          一個計算機(jī)技術(shù)愛好者! 雖然我擁有了系統(tǒng)分析師的證書,但我仍然是一個計算機(jī)技術(shù)愛好者!
          posts - 119,comments - 73,trackbacks - 0
          http://blog.csdn.net/llmmysun/archive/2004/11/05/168753.aspx
          數(shù)據(jù)庫移動,在項目實施過程中,經(jīng)常會發(fā)生,對于有經(jīng)驗的DBA來說,數(shù)據(jù)庫移動是十分容易。但對于一些只了解系統(tǒng),對數(shù)據(jù)庫不是十分懂的人員來說,oracle的移動就不是那么容量了。
          例 如當(dāng)系統(tǒng)安裝完成以后,存儲空間擴(kuò)容了,需要對原對ORACLE進(jìn)行移動,需要進(jìn)行數(shù)據(jù)移動。以前在ORACLE8I FOR WINDOWS 2000中是可以進(jìn)行移動的?,F(xiàn)在ORACLE9I FOR AIX 5L 的移動如何做呢???其實經(jīng)對各種不同的平臺,操作過程完全一樣。
          一、復(fù)制移動數(shù)據(jù)文件
          1)、獲取數(shù)據(jù)庫相關(guān)信息
          首先要查看一下數(shù)據(jù)庫的文件內(nèi)容:
          sqlplus “ / as sysdba”
          ? select * from v$datafile;
          ? select * from v$controlfile
          ? select * from v$logfile;
          2)、移動應(yīng)用數(shù)據(jù)文件
          shutdown immediate關(guān)閉數(shù)據(jù)庫,拷貝數(shù)據(jù)文件到另外一個目錄下。需要copy 的文件有:
          system01.dbf
          indx01.dbf
          temp01.dbf
          users01.dbf
          應(yīng)用數(shù)據(jù)文件

          3)、 修改數(shù)據(jù)庫文件的位置
          啟動MOUNT模式
          ? startup mount;
          ? alter database rename file ‘\oracle\oradata\ocp\system01.dbf' to ‘\oradata\ocp\system01.dbf”
          ? alter database rename file ‘\oracle\oradata\ocp\indx01.dbf' to ‘\oradata\ocp\indx01.dbf';
          注意只能進(jìn)行更改移動的數(shù)據(jù)庫文件,不包括控制文件與日志文件,TEMP文件。
          二. 移動控制文件

          (1)備份SPFILE中的內(nèi)容:
          再重新啟動數(shù)據(jù)庫:
          ? startup;
          ? create pfile='c:\init.ora' from spfile;
          (2)修改init.ora文件中的內(nèi)容:
          *.control_files='\oradata\ocp\control01.ctl','\oradata\ocp\control02.ctl','\oradata\ocp\control03.ctl'
          進(jìn)行更改已經(jīng)復(fù)制的目錄位置。
          Shutdown 數(shù)據(jù)庫
          (3)將控制文件復(fù)制過去,
          將三個控制文件移動到上面所修改的的目錄下。
          (4) 倒入?yún)?shù)文件
          以init.ora參數(shù)方式啟動:
          ? startup pfile='\oracle\init.ora';
          ? create spfile from pfile='\oracle\init.ora';
          ? shutdown immediate;
          ? startup; 從spfile中進(jìn)行啟動。
          這樣控制文件移動工作就結(jié)束了。
          三、 重建或重定位LOG文件
          解決日志文件的移動方式有兩種,一種是移動(RENAME方式)另一種是重新創(chuàng)建。
          (1)移動LOG文件
          重新移動數(shù)據(jù)庫文件與移動系統(tǒng)數(shù)據(jù)庫文件是一樣的方法,只是要求數(shù)據(jù)庫必須是“startup mount”方式進(jìn)行。
          ? 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文件組在系統(tǒng)中。
          Alter database drop logfile member ‘\oracle\oradata\ocp\oralog01.ora'

          四、重建系統(tǒng)監(jiān)時(temp)文件系統(tǒng)

          在移動數(shù)據(jù)表空間時,TEMP文件是不能被移動的,這里要求可以進(jìn)行重建一個TEMP表空間,并設(shè)置為系統(tǒng)默認(rèn)的TEMP文件系統(tǒng)。然后再冊除原來的TEMP表空間,達(dá)到移動表空間的過程。
          > create temporary tablespace “temp02” tempfile ‘\oradata\ocp\temp02.dbf' size 500m extent management local uniform size 10m;
          然后再刪除原來的TEMP文件就可以了。

          五、測試數(shù)據(jù)庫
          進(jìn)行重啟動ORACLE數(shù)據(jù)
          $ sqlplus “/as sysdba”
          ? startup;
          ? show sga;
          ?

          posted on 2007-07-11 17:08 石正 閱讀(210) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          淺陋見解,僅供參考。拋磚引玉,多加指教!
          主站蜘蛛池模板: 卢氏县| 建阳市| 黄大仙区| 溧阳市| 九龙城区| 梁山县| 清水县| 陵水| 阿坝| 观塘区| 沈丘县| 双峰县| 永宁县| 乌什县| 乌恰县| 绥江县| 龙州县| 福清市| 乌兰察布市| 牟定县| 象州县| 葫芦岛市| 耿马| 洛宁县| 温州市| 红桥区| 南澳县| 巨鹿县| 普格县| 手机| 雷州市| 甘谷县| 沽源县| 利津县| 汕尾市| 长葛市| 桂平市| 威信县| 盐源县| 陆河县| 仁怀市|