中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Oracle如何實現冷備份及其恢復

發布時間:2021-11-11 09:10:04 來源:億速云 閱讀:209 作者:小新 欄目:關系型數據庫

這篇文章主要為大家展示了“Oracle如何實現冷備份及其恢復”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Oracle如何實現冷備份及其恢復”這篇文章吧。

一、冷備份的概念

    冷備份是指在數據庫關閉狀態下所做的物理拷貝,也稱脫機備份。

    適合于非歸檔模式下的備份,而且也只能采用這種方式備份。

二、需要備份的文件

    必須備份的文件:

      數據文件和控制文件

     可以備份的文件:

      重做日志文件、臨時文件、二進制參數文件(spfile)、口令文件

三、冷備份的步驟

    1. 找到所需要的備份文件

    2. 正常關閉數據庫

    3. 備份文件到指定的備份路徑下

    4. 重新啟動數據庫

四、冷腳本的寫法

4.1 查看文件位置及狀態

  --查看實例和數據庫的相關信息     

SQL>select instance_name,version,status,archiver,database_status from v$instance;

INSTANCE_NAME     VERSION       STATUS    ARCHIVE DATABASE_STATUS

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

dbsrv1         11.2.0.1.0       OPEN     STOPPED ACTIVE

SQL>select dbid,name,log_mode from v$database;

      DBID NAME      LOG_MODE

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

 294555525 DBSRV1    NOARCHIVELOG

  --查看數據文件及狀態信息

SQL> col file_name  for a50

SQL> col tablespace_name for a15

SQL>selectfile_name,tablespace_name,status,online_status from dba_data_files;

FILE_NAME                                   TABLESPACE_NAME STATUS    ONLINE_

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

/opt/oracle/app/oradata/dbsrv1/users01.dbf      USERS         AVAILABLE   ONLINE

/opt/oracle/app/oradata/dbsrv1/undotbs01.dbf     UNDOTBS1       AVAILABLE   ONLINE

/opt/oracle/app/oradata/dbsrv1/sysaux01.dbf         SYSAUX        AVAILABLE   ONLINE

/opt/oracle/app/oradata/dbsrv1/system01.dbf         SYSTEM        AVAILABLE   SYSTEM

/opt/oracle/app/oradata/costctl/COSTCTL_TBS.dbf      COSTCTL_TBS   AVAILABLE    ONLINE

/opt/oracle/app/oradata/dbsrv1/DEV_DATA.DBF          DEV_DATA      AVAILABLE   ONLINE

/opt/oracle/app/oradata/pdms/PDMS_DATA.dbf           PDMS_DATA      AVAILABLE  ONLINE

Oracle如何實現冷備份及其恢復

  查看數據文件

Oracle如何實現冷備份及其恢復

SQL> col name for a50

SQL>selectfile#, name, status from v$datafile;

     FILE# NAME                                       STATUS

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

     1/opt/oracle/app/oradata/dbsrv1/system01.dbf          SYSTEM

     2/opt/oracle/app/oradata/dbsrv1/sysaux01.dbf          ONLINE

     3/opt/oracle/app/oradata/dbsrv1/undotbs01.dbf       ONLINE

     4/opt/oracle/app/oradata/dbsrv1/users01.dbf          ONLINE

     5/opt/oracle/app/oradata/costctl/COSTCTL_TBS.dbf    ONLINE

     6/opt/oracle/app/oradata/dbsrv1/DEV_DATA.DBF          ONLINE

     7/opt/oracle/app/oradata/pdms/PDMS_DATA.dbf          ONLINE

Oracle如何實現冷備份及其恢復

  --查看臨時文件

Oracle如何實現冷備份及其恢復

SQL> col name for a60

SQL>select name from v$tempfile;

NAME

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

/opt/oracle/app/oradata/dbsrv1/temp01.dbf

/opt/oracle/app/oradata/costctl/COSTCTL_TBS_temp.dbf

/opt/oracle/app/oradata/pdms/PDMS_DATA_TEMP.dbf

Oracle如何實現冷備份及其恢復

  --查看日志文件

Oracle如何實現冷備份及其恢復

SQL>select member from v$logfile;

MEMBER

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

/opt/oracle/app/oradata/dbsrv1/redo03.log

/opt/oracle/app/oradata/dbsrv1/redo02.log

/opt/oracle/app/oradata/dbsrv1/redo01.log

Oracle如何實現冷備份及其恢復

  --查看控制文件

SQL>select name from v$controlfile;

NAME

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

/opt/oracle/app/oradata/dbsrv1/control01.ctl

/opt/oracle/app/flash_recovery_area/dbsrv1/control02.ctl

  --查看參數文件

SQL> show parameter pfile

NAME                     TYPE        VALUE

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

spfile                     string    /opt/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/spfiledbsrv1.ora

4.2 進行備份

方案一、

 --創建備份目錄

SQL> ho mkdir -p /u03/backup/coolbak

 --使用連接符生成復制文件命令

SQL>select'ho cp'||name||'/u03/backup/coolbak'from v$controlfile;

'HOCP'||NAME||'/U03/BACKUP/COOLBAK'

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

ho cp/opt/oracle/app/oradata/dbsrv1/control01.ctl/u03/backup/coolbak

ho cp/opt/oracle/app/flash_recovery_area/dbsrv1/control02.ctl/u03/backup/coolbak

 SQL>save/tmp/tmpbak.sql;   --將上面的輸入保存為tmpbak.sql

    Created file/tmp/tmpbak.sql

編輯coolbak.sql

注意修改密碼文件的位置和pfile的名字

Oracle如何實現冷備份及其恢復

    set feedback off

    set heading off

    set verify off

    set trimspool off

    set pagesize 0

    set linesize 200

    define dir ='/u03/backup/coolbak'

    define script ='/u03/backup/coolbak.txt'

    define passwd ='/u01/app/oracle/product/11.2.0/db_1/dbs/orapworcl'

    spool &script

    select'ho cp -pv '|| name ||' &dir'from v$controlfile

    unionall

    select'ho cp -pv '|| name ||' &dir'from v$datafile

    unionall

    select'ho cp -pv '|| member ||' &dir'  from v$logfile

    unionall

    select'ho cp -pv '|| name ||' &dir'from v$tempfile

    /

    create pfile ='&dir/initorcl.ora'from spfile;

    ho cp -pv   &passwd  &dir

    spool off

    shutdown immediate

    ho mkdir -pv /u03/backup/coolbak

    ho rm -rf /u03/backup/coolbak/*

    start &script

    startup

Oracle如何實現冷備份及其恢復

 --執行coolbak.sql

    SQL> @/tmp/coolbak.sql;

 --執行過程及數據庫啟動略

  --啟動后查看備份的文件

需要注意的是這種方式不利于恢復,得去尋找恢復的目錄最好在cool后建立與數據庫相同的目錄。

 冷恢復的步驟

脫機恢復到原來位置的步驟:

  1. 如果數據庫沒有關閉,需關閉數據庫

  2. 將所有的備份數據文件和備份控制文件復制到數據庫原來的位置

  3. 也可以將其它所有的備份文件復制到數據庫原來的位置(該操作不是必須的)

  4. 重啟數據庫

 恢復成功后,數據庫即恢復到上一次的備份,恢復所需要的時間就是復制文件所需要的時間。

脫機恢復到非原來位置的步驟:

  有時候儲存數據文件的磁盤壞了,可能需要改變數據文件的恢復位置

  1. 將備份文件恢復到正常的磁盤上

  2. 將數據庫加載為mount狀態(startup mount)

  3. alter database rename file 'u01/xxx.DBF'  to 'u02/xxx.DBF'    (u01磁盤損壞)

  4. alter database open

以上是“Oracle如何實現冷備份及其恢復”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

辽宁省| 青冈县| 名山县| 昌平区| 彭阳县| 冕宁县| 尉氏县| 柏乡县| 桐柏县| 伊宁市| 大余县| 隆德县| 曲阳县| 鹤壁市| 延庆县| 永丰县| 浪卡子县| 霍邱县| 文山县| 达尔| 兰州市| 东乡县| 青田县| 东丰县| 绥芬河市| 西峡县| 淮安市| 和顺县| 临江市| 额尔古纳市| 肇庆市| 霍邱县| 涟水县| 沐川县| 浮梁县| 崇礼县| 全州县| 东辽县| 宁陵县| 安康市| 扎鲁特旗|