oracle數據庫遷移

一、原始信息記錄及複製

  1.記錄欲遷移庫的sid,是否爲歸檔模式(查看方法:以sys用戶登入sqlplus後運行archive log list,建庫時默認爲非歸檔模式)以及如下文件的存放位置:參數文件,密碼文件,控制文件,日誌文件,數據文件參數文件存放在C:\oracle\product\10.2.0\db_1\dbs目錄下,名爲SPFILE<sid>.ORA,例如SPFILEORCL.ORA密碼文件一般與參數文件存放C:\oracle\product\10.2.0\db_1\database,名爲PWD<sid>.ora,例如PWDorcl.ora

  控制文件的位置和個數可通過查看參數文件獲得,參數文件中有這樣一行文字:C:\oracle\product\10.2.0\oradata\orcl\CONTROL01.CTL C:\oracle\product\10.2.0\oradata\orcl\CONTROL02.CTL C:\oracle\product\10.2.0\oradata\orcl\CONTROL03.CTL注意:不要用記事本打開參數文件,那樣會破壞其格式,用寫字板之類的打開,並且打開前先備份一個數據文件與日誌文件存放的位置根據具體情況而定,一般在oradata\以實例名爲名稱的目錄\,控制文件的位置一般也在這個目錄下

  2 複製這些文件到目標主機上

  二 建立新數據庫

  1 在目標主機上建個與原主機位置相同的文件夾,例如pme上所有數據文件,日誌文件,控制文件均存放在D:\oradata\orcl下,

  則在目標主機上建D:\oradata\orcl目錄

  2.在目標主機上用Database Configuration Assistant(即dbca)建立一個新的數據庫,SID與原有庫相同,其它各步可選用默認選項(注意是否歸檔模式需與原庫保持一致)

  3 建好庫以後,先備份一下新庫的參數文件,密碼文件,控制文件,日誌文件,數據文件,以防遷移不成功恢復這個新庫用

  4 以sys用戶登入sqlplus,關閉數據庫——shutdown immediate

  5 用原庫的參數文件,密碼文件,控制文件替換新庫的相應文件

  並編輯參數文件中的如下項爲實際位置

  *.background_dump_dest='F:\oracle\admin\orcl\bdump'

  *.control_files='E:\oradata\orcl\control01.ctl','E:\oradata\orcl\control02.ctl','E:\oradata\orcl\control03.ctl'

  *.core_dump_dest='F:\oracle\admin\orcl\cdump'

  *.user_dump_dest='F:\oracle\admin\orcl\udump'

  注意保證參數文件的格式不要被破壞

  6.將原庫的所有數據文件和日誌文件拷過去替換新庫的相應文件(新庫中只有oracle初始化建的數據文件,而原庫中有我們自己建的數據文件,要將這些也拷過去,主要就是爲了遷移這些數據)

  遷移完畢

  三 啓動新庫

  命令行下:

  Set oracle_sid=新庫sid

  Sqlplus /nolog

  Conn /as sysdba

  會提示已連接到空閒例程

  SQL> startup nomount

  ORACLE 例程已經啓動。

  Total System Global Area? 135338868 bytes

  Fixed Size?????????????????? 453492 bytes

  Variable Size???????????? 109051904 bytes

  Database Buffers?????????? 25165824 bytes

  Redo Buffers???????????????? 667648 bytes

  SQL>

  出現上面的字幕說明參數文件沒有問題

  若提示ORA-600說明參數文件格式出問題了或者內容有問題,檢查之前步驟

  startup nomount成功後

  運行create pfile from spfile;

  創建後運行 alter database mount;

  成功的話說明找到控制文件了

  成功後運行alter database open;

  成功的話說明遷移成功

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章