RM新时代国际平台

  • <div id="r605l"></div>
      1. <th id="r605l"></th>
      2. oracle 異機恢復(fù)小記

        試驗環(huán)境:

        操作系統(tǒng):redhat 7.5

        數(shù)據(jù)庫版本:oracle 11.2.0.4

        試驗步驟:

        1、 異機恢復(fù)前,首先需要安裝目標(biāo)數(shù)據(jù)庫,在新的服務(wù)器,可以選擇只安裝oracle軟件。

        2、 源數(shù)據(jù)庫開啟有歸檔模式,若開啟了歸檔模式,可以手動切換一下日志,確保歸檔可以正常運行。切換后,可以使用SQL:select name from v$archived_log;查看歸檔信息。

        3、 oracle默認是備份是備份在快速恢復(fù)區(qū),若不是以快速恢復(fù)區(qū)作為備份存放路徑,備份路徑可以在sqlplus 中,使用命令:show parameter db_recovery_file_dest 查看。

        4、 使用rman,對源數(shù)據(jù)庫進行備份,使用命令:rman target / 進入到rman命令行中。

        5、 因數(shù)據(jù)庫的快速恢復(fù)區(qū)有其他備份的文件,這里新建一個/home/oracle/backupset目錄,用來存放這次的備份,具體操作按實際情況來,可參照下面語句對數(shù)據(jù)庫進行備份:

        RMAN> run {

        allocate channel ch1 device type disk;

        allocate channel ch2 device type disk;

        sql 'alter system archive log current';

        backup database format ' /home/oracle/backupset /data_%U.bak';

        backup archivelog all format ' /home/oracle/backupset /arch_%U.bak';

        backup current controlfile format ' /home/oracle/backupset /ctl_%U.bak';

        release channel ch1;

        release channel ch2;

        }

        6、 接著從源數(shù)據(jù)庫中,備份一個pfile文件備用,進入sqlplus命令行中,執(zhí)行下面的語句,創(chuàng)建pfile文件;create pfile='

        /home/oracle/backupset/pfile.ora' from spfile;

        7、 將備份的拷貝到目標(biāo)數(shù)據(jù)庫服務(wù)器中去??墒褂?scp 命令操作,參考命令:

        scp -r /home/oracle/backupset [url=]oracle@192.168.xxx.xxx:/home/oracle/[/url]

        這是從源數(shù)據(jù)庫操作的命令方式。

        scp -r [url=]oracle@192.168.xxx.xxx: /home/oracle/backupset /home/oracle/[/url]

        這是從目標(biāo)數(shù)據(jù)庫服務(wù)器操作的命令方式。

        8、 使用scp命令將源數(shù)據(jù)庫的密碼文件拷貝到目標(biāo)數(shù)據(jù)庫中:scp $ORACLE_HOME/dbs/orapworcl [url=]oracle@192.168.xxx.xxx:$ORACLE_HOME/dbs/[/url]

        9、 根據(jù)備份的參數(shù)文件,還原audit_file_dest、control_files與恢復(fù)區(qū)的目錄。

        使用命令,查看參數(shù)文件pfile :

        Cat/home/oracle/backupset/pfile.ora

        范例內(nèi)容如下:注意的位置,這里標(biāo)紅

        orcl.__db_cache_size=452984832

        orcl.__java_pool_size=4194304

        orcl.__large_pool_size=8388608

        orcl.__oracle_base='/u01/app'#ORACLE_BASEset from environment

        orcl.__pga_aggregate_target=432013312

        orcl.__sga_target=641728512

        orcl.__shared_io_pool_size=0

        orcl.__shared_pool_size=163577856

        orcl.__streams_pool_size=0

        *.audit_file_dest='/u01/app/admin/orcl/adump'

        *.audit_trail='DB'

        *.compatible='11.2.0.0.0'

        *.control_files='/u01/app/oracle/oradata/orcl/control01.ctl','/u01/app/flash_recovery_area/orcl/control02.ctl'

        *.db_block_size=8192

        *.db_domain=''

        *.db_name='orcl'

        *.db_recovery_file_dest_size=4070572032

        *.db_recovery_file_dest='/u01/app/flash_recovery_area'

        *.diagnostic_dest='/u01/app'

        *.dispatchers='(PROTOCOL=TCP)(SERVICE=orclXDB)'

        *.event=''

        *.log_archive_format='%t_%s_%r.arc'

        *.memory_target=1073741824

        *.open_cursors=300

        *.processes=150

        *.remote_login_passwordfile='EXCLUSIVE'

        *.undo_tablespace='UNDOTBS1'

        這里因為有一個控制文件在快速恢復(fù)區(qū)中,在創(chuàng)建那個目錄時,快速恢復(fù)區(qū)也創(chuàng)建完成了,所以這里就不再創(chuàng)建快速恢復(fù)區(qū)

        創(chuàng)建目錄命令如下:

        Mkdir-p /u01/app/admin/orcl/adump

        Mkdir -p /u01/app/oracle/oradata/orcl

        Mkdir -p /u01/app/flash_recovery_area/orcl

        10、 然后以參數(shù)文件pfile 將目標(biāo)數(shù)據(jù)庫啟動到nomount狀態(tài)。

        因本機的恢復(fù)目錄是快速恢復(fù)區(qū),故將這些備份的文件,移運到快速恢復(fù)區(qū)

        /u01/app/flash_recovery_area下。在目標(biāo)數(shù)據(jù)庫中,進入sqlplus命令行。執(zhí)行SQL語句:startup nomount pfile=‘

        /u01/app/flash_recovery_area/pfile.ora‘;

        11、 啟動到nomount狀態(tài)后,使用SQL語句:createspfile from pfile=‘

        /u01/app/flash_recovery_area/pfile.ora‘;創(chuàng)建數(shù)據(jù)庫的spfile文件,然后showdown immediate 關(guān)閉數(shù)據(jù)庫,以spfile將數(shù)據(jù)庫啟動到nomount狀態(tài),驗證spfile創(chuàng)建是否成功。

        12、 還原控制文件,進入rman命令行,使用restorecontrolfile 來還原控制文件,

        參照:restorecontrolfile from '

        /u01/app/flash_recovery_area/ctl_08uevvek_1_1.bak '

        13、 控制文件還原后將數(shù)據(jù)庫啟動到mount狀態(tài),使用命令:alter database mount 使數(shù)據(jù)庫轉(zhuǎn)到mount 狀態(tài)。

        14、 還原和恢復(fù)數(shù)據(jù)庫,接著上面,在rman命令行中,執(zhí)行命令:restore database; 還原數(shù)據(jù)庫,在數(shù)據(jù)庫還原后,再執(zhí)行命令:recoverdatabase; 來恢復(fù)數(shù)據(jù)庫。在恢復(fù)的最后,會有類似下面標(biāo)紅處關(guān)于歸檔日志的提示:

        RMAN>recover database;

        Startingrecover at 22-OCT-19

        using channelORA_DISK_1

        startingmedia recovery

        channelORA_DISK_1: starting archived log restore to default destination

        channelORA_DISK_1: restoring archived log

        archived logthread=1 sequence=62

        channel ORA_DISK_1:reading from backup piece /home/oracle/backupset/arch_07uevvej_1_1.bak

        channelORA_DISK_1: piece handle=/home/oracle/backupset/arch_07uevvej_1_1.baktag=TAG20191022T211042

        channelORA_DISK_1: restored backup piece 1

        channelORA_DISK_1: restore complete, elapsed time: 00:00:01

        archived logfilename=/u01/app/flash_recovery_area/ORCL/archivelog/2019_10_22/o1_mf_1_62_gty1g3f8_.arcthread=1 sequence=62

        channeldefault: deleting archived log(s)

        archived logfile name=/u01/app/flash_recovery_area/ORCL/archivelog/2019_10_22/o1_mf_1_62_gty1g3f8_.arcRECID=10 STAMP=1022362563

        unable tofind archived log

        archived logthread=1 sequence=63

        RMAN-00571:===========================================================

        RMAN-00569:=============== ERROR MESSAGE STACK FOLLOWS ===============

        RMAN-00571:===========================================================

        RMAN-03002:failure of recover command at 10/22/2019 21:36:04

        RMAN-06054: media recovery requesting unknownarchived log for thread 1 with sequence 63 and starting SCN of 1829484

        這里根據(jù)最后的SCN號,執(zhí)行命令:recoverdatabase until scn 1829484; 通過歸檔日志進行最后的數(shù)據(jù)庫恢復(fù)。

        15、 恢復(fù)完成后,將數(shù)據(jù)庫以resetlogs 方式打開。

        alter database open resetlogs;

        16、 完成后,對數(shù)據(jù)庫恢復(fù)情況進行驗證

        查看恢復(fù)的實例:

        SQL>select instance_name, status from v$instance;

        INSTANCE_NAME STATUS

        ----------------------------

        orcl OPEN

        查看數(shù)據(jù)庫的讀寫模式:

        SQL>select dbid, open_mode from v$database;

        DBID OPEN_MODE

        ------------------------------

        1549427181READ WRITE

        查看數(shù)據(jù)文件恢復(fù)情況:

        SQL>select file_name from dba_data_files;

        FILE_NAME

        --------------------------------------------------------------------------------

        /u01/app/oracle/oradata/orcl/users01.dbf

        /u01/app/oracle/oradata/orcl/undotbs01.dbf

        /u01/app/oracle/oradata/orcl/sysaux01.dbf

        /u01/app/oracle/oradata/orcl/system01.dbf

        查看重做日志恢復(fù)情況:

        SQL>select member from v$logfile;

        MEMBER

        --------------------------------------------------------------------------------

        /u01/app/oracle/oradata/orcl/redo03.log

        /u01/app/oracle/oradata/orcl/redo02.log

        /u01/app/oracle/oradata/orcl/redo01.log

        查看重做日志組恢復(fù)情況:

        SQL>SELECT THREAD#,SEQUENCE#,ARCHIVED,STATUS FROM V$LOG;

        THREAD# SEQUENCE# ARC STATUS

        -------------------- --- ----------------

        1 1 NO CURRENT

        1 0 YES UNUSED

        1 0 YES UNUSED

        17、創(chuàng)建監(jiān)聽,可以使用netca工具創(chuàng)建監(jiān)聽,或可根據(jù)原數(shù)據(jù)庫中的監(jiān)聽文件,在目標(biāo)庫中,創(chuàng)建監(jiān)聽


        下一篇:Oracle 批量插入,truncate,去掉碎片,事務(wù)
        RM新时代国际平台
      3. <div id="r605l"></div>
          1. <th id="r605l"></th>
          2. <div id="r605l"></div>
              1. <th id="r605l"></th>
              2. 新时代RM|国际平台 新时代软件下载 RM新时代官网网址 rm新时代是正规平台 新时代rm平台入口