oracle冷備份遷移資料庫到其他機器步驟

來源:互聯網
上載者:User

  步驟很簡單:關源庫->拷貝到目標機器->啟動到mount狀態重新命名->open資料庫

  登入來源資料庫所在主機

  建立映射目錄 192.168.1.2oradata 映射為 z: 盤

  映射完畢後檢查是否允許寫入檔案

  需要注意關閉目標資料庫位置伺服器的防火牆

  搜集源庫資訊

  執行個體名、版本、塊大小、資料表空間、資料檔案

  select * from v$instance;

  select * from v$database;

  select * from v$tablespace;

  select * from v$datafile;

  在源庫上整理需拷貝的檔案

  執行檔案cp.sql,其內容如下:

  set linesize 130 pagesize 2000

  set trimspool on

  set echo off

  set verify off

  set timing off

  set feedback off

  set head off

  set echo off

  spool cpfile.bat

  select 'copy '||name||' z:orcl'|| substr(name, instr(name, '', -1) + 1) cmd from v$controlfile

  union all

  select 'copy '||member||' z:orcl'|| substr(member, instr(member, '', -1) + 1) cmd from v$logfile

  union all

  select 'copy '||name||' z:orcl'|| substr(name, instr(name, '', -1) + 1) cmd from v$datafile

  union all

  select 'copy '||name||' z:orcl'|| substr(name, instr(name, '', -1) + 1) cmd from v$tempfile

  union all

  select 'copy '||value||' z:orcl'|| substr(value, instr(value, '', -1) + 1) cmd from v$parameter where name='spfile';

  spool off

  產生改名指令碼

  執行檔案ren.sql ,其內容如下:

  set linesize 130 pagesize 2000

  set trimspool on

  set echo off

  set verify off

  set timing off

  set feedback off

  set head off

  set echo off

  spool renfile.sql

  select 'ALTER DATABASE RENAME FILE '''||member||''' to ''d:oradataorcl'|| substr(member, instr(member, '', -1) + 1)||'''; ' cmd from v$logfile

  union all

  select 'ALTER DATABASE RENAME FILE '''||name||''' to ''d:oradataorcl'|| substr(name, instr(name, '', -1) + 1)||'''; ' cmd from v$datafile

  union all

  select 'ALTER DATABASE RENAME FILE '''||name||''' to ''d:oradataorcl'|| substr(name, instr(name, '', -1) + 1)||'''; ' cmd from v$tempfile;

  spool off

  create pfile from spfile;

  關閉源庫

  host lsnrctl stop

  shutdown immediate

  將windows服務設定為手工啟動(關鍵!!! 防止萬一複製出現問題還可以重新複製一致的檔案)

  拷貝控制檔案、記錄檔、資料檔案,

  host cpfile.bat

  startup

  host lsnrctl start

  拷貝pfile、 tnsname.ora、 口令檔案、renfile.sql

  在目標資料庫修改參數檔案中的控制檔案內容

  配置啟動參數檔案pfile,修改控制檔案位置及路徑資訊

  啟動到mount狀態

  sqlplus "/as sysdba"

  startup mount pfile=?/database/initorcl.ora

  修改檔案位置

  SQL> @renfile.sql

  開啟資料庫

  create spfile from pfile;

  host lsnrctl start

  檢查臨時檔案是否有

  串連測試

  參考命令:

  oradim -NEW -SID test -STARTMODE manual -PFILE "D:Oracleadmintestpfileinittest.ora"

  ALTER DATABASE RENAME FILE 'c:oracleproductoradataexample.dbf'

  TO 'c:oracleproductoradatademos.dbf'

  修改日誌組位置

  ALTER DATBASE [database}

  RENAME FILE 'filename’[,'filename']…

  TO 'filename']…

  建立日誌組

  ALTER DATABASE ADD LOGFILE GROUP 3

  ('$HOME/ORADATA/u01/log3a.rdo',

  '$HOME/ORADATA/u02/log3b.rdo')

  SIZE 1M;

  新增成員

  ALTER DATABASE ADD LOGFILE MEMBER

  '$HOME/ORADATA/u04/log1c.rdo' TO GROUP 1,

  '$HOME/ORADATA/u04/log2c.rdo' TO GROUP 2,

  '$HOME/ORADATA/u04/log3c.rdo' TO GROUP 3;

  刪除日誌組

  ALTER DATABASE DROP LOGFILE GROUP 3;

  刪除成員

  ALTER DATABASE DROP LOGFILE MEMBER '$HOME/ORADATA/u04/log3c.rdo';

  清除日誌

  ALTER DATABASE CLEAR LOGFILE '$HOME/ORADATA/u01/log2a.rdo';

  增加臨時檔案

  ALTER TABLESPACE temp ADD TEMPFILE '/oradata/temp03.dbf' SIZE 100M;

  刪除臨時檔案:

  ALTER DATABASE TEMPFILE '/oradata/temp02.dbf' DROP INCLUDING DATAFILES;

  250資料庫 245G 拷貝時間需要 9 小時

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.