達夢DM備份恢復(物理和邏輯)
前言
主要介紹達夢資料庫的邏輯備份還原及物理備份還原。
一、邏輯備份還原
邏輯備份工具使用dexp,還原工具使用dimp在安裝的bin目錄下面
1、邏輯備份
注意:資料庫字符集
四種級別的匯出方式
FULL-全庫
FULL 方式匯出資料庫的所有物件。
例如,設定 FULL=Y,匯出資料庫的所有物件,匯出資料庫檔案和日誌檔案放在路徑 /dm/dmbak/dexp 下。
./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp LOG=db_str.log FULL=Y DIRECTORY= /dm/dmbak/dexp
OWNER-使用者
OWNER 方式匯出一個或多個使用者擁有的所有物件。
例如,設定 OWNER=USER01,匯出使用者 USER01 所擁有的物件全部匯出。
./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp LOG=db_str.log OWNER=USER01 DIRECTORY= /dm/dmbak/dexp
SCHEMAS-模式
SCHEMAS 方式的匯出一個或多個模式下的所有物件。
例如,設定 SCHEMAS=USER01,匯出模式 USER01 模式下的所有物件。
./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp LOG=db_str.log SCHEMAS=USER01 DIRECTORY= /dm/dmbak/dexp
TABLES-表名
TABLES 方式匯出和匯入一個或多個指定的表或表分割槽。匯出所有資料行、約束、索引等資訊。
例如,設定 TABLES=table1,table2,匯出 table1,table2 兩張表的所有資料和資訊。
./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp LOG=db_str.log TABLES=table1,table2 DIRECTORY= /dm/dmbak/dexp
和 TABLES 匯出有關的引數還有 QUERY、EXCLUDE 和 INCLUDE,都是用來設定過濾條件的。
更多的使用方法可以用dexp help 進行檢視。
2、邏輯還原
四種級別的匯入方式
FULL-全庫
FULL 方式匯入整個資料庫。
例如,設定 FULL=Y,匯入整個資料庫,匯入的資料庫檔案在 /dm/dmbak/dexp,即將生成的日誌檔案放在 /dm/dmbak/dimp。
./dimp USERID=SYSDBA/SYSDBA FILE= /dm/dmbak/dexp/db_str.dmp LOG=db_str.log FULL=Y DIRECTORY= /dm/dmbak/dimp
OWNER-使用者
OWNER 方式匯入一個或多個使用者擁有的所有物件。
例如,設定 OWNER=USER01,匯入使用者 USER01 所擁有的物件全部匯出。匯入的資料庫檔案在 /dm/dmbak/dexp,即將生成的日誌檔案放在 /dm/dmbak/dimp。
./dimp USERID=SYSDBA/SYSDBA FILE= /dm/dmbak/dexp/db_str.dmp LOG=db_str.log OWNER=USER01 DIRECTORY= /dm/dmbak/dimp
SCHEMAS-模式名
SCHEMAS 方式的匯入一個或多個模式下的所有物件。
例如,設定 SCHEMAS=USER01,匯入模式 USER01 模式下的所有物件。匯入的資料庫檔案在 /dm/dmbak/dexp,即將生成的日誌檔案放在 /dm/dmbak/dimp。
./dimp USERID=SYSDBA/SYSDBA FILE= /dm/dmbak/dexp/db_str.dmp LOG=db_str.log SCHEMAS=USER01 DIRECTORY= /dm/dmbak/dimp
注意:在新的例項中匯入,一定要有匯入檔案對應的模式名
TABLES-表名
TABLES 方式匯入一個或多個指定的表或表分割槽。匯入所有資料行、約束、索引等資訊。
例如,設定 TABLES=table1,table2,匯入 table1,table2 兩張表的所有資料和資訊。匯入的資料庫檔案在 /dm/dmbak/dexp,即將生成的日誌檔案放在 /dm/dmbak/dimp。
./dimp USERID=SYSDBA/SYSDBA FILE= /dm/dmbak/dexp/db_str.dmp LOG=db_str.log TABLES=table1,table2 DIRECTORY= /dm/dmbak/dimp
和 TABLES 匯入有關的引數還有 EXCLUDE,用來指定匯入時過濾掉某類物件。
注意:在匯出時如果有模式名,新例項匯入時也要有模式名,新例項就會生成對應的模式名
更多的使用方法可以用dimp help 進行檢視。
二、物理備份還原
1、聯機備份
利用 disql 工具或圖形化管理工具 SQL 編輯區實現資料檔案的備份。
全備
SQL>BACKUP DATABASE FULL BACKUPSET '/dm/dmbak/db_full_bak_01';
指定備份集路徑為 /dm/dmbak/db_bak_3_01,執行以下命令:
SQL>BACKUP DATABASE BACKUPSET '/dm/dmbak/db_bak_3_01';
建立備份集,備份名設定為 WEEKLY_FULL_BAK,執行以下命令:
SQL>BACKUP DATABASE TO WEEKLY_FULL_BAK BACKUPSET '/dm/dmbak/db_bak_3_02';
建立備份為備份集新增描述資訊為完全備份,執行以下命令:
SQL>BACKUP DATABASE BACKUPSET '/dm/dmbak/db_bak_3_04' BACKUPINFO '完全備份';
建立備份限制備份片大小為 300 MB,執行以下命令:
SQL>BACKUP DATABASE BACKUPSET '/dm/dmbak/db_bak_3_05' MAXPIECESIZE 300;
執行備份壓縮,壓縮級別設定為 5,執行以下命令:
SQL>BACKUP DATABASE BACKUPSET '/dm/dmbak/db_bak_3_06' COMPRESSED LEVEL 5;
建立並行備份,指定並行數為 8,執行以下命令:
SQL>BACKUP DATABASE BACKUPSET '/dm/dmbak/db_bak_3_07' PARALLEL 8;
基於 /dm/dmbak 全量備份的差異增量備份,執行以下命令:
SQL>BACKUP DATABASE INCREMENT WITH BACKUPDIR '/dm/dmbak' BACKUPSET '/dm/dmbak/db_increment_bak_02';
2、離線備份
離線備份使用dmrman工具,在安裝bin目錄下面,離線備份需要指定例項的dm.ini檔案,且離線備份需要停止資料庫例項服務。
進入dmrman
[dmdba@yhkylin bin]$ ./dmrman
dmrman V8
RMAN>
全庫備份,在 DMRMAN 下執行以下命令:
RMAN>BACKUP DATABASE '/dm/dmdata/DAMENG/dm.ini' FULL BACKUPSET '/dm/dmbak/db_full_bak_01';
差異增量備份,在 DMRMAN 下執行以下命令:
RMAN>BACKUP DATABASE '/dm/dmdata/DAMENG/dm.ini' INCREMENT WITH BACKUPDIR '/dm/dmbak' BACKUPSET '/dm/dmbak/db_increment_bak_02';
3、物理還原
物理還原使用dmrman工具,在安裝bin目錄下面,物理還原需要指定例項的dm.ini檔案,且物理還原需要停止資料庫例項服務。
1、全庫備份的恢復還原
還原資料庫。啟動 DMRMAN,執行以下命令:
RMAN>RESTORE DATABASE '/dm/dmdata/DAMENG/dm.ini' FROM BACKUPSET '/dm/dmbak/db_full_bak_01';
恢復資料庫。啟動 DMRMAN,執行以下命令:
RMAN>RECOVER DATABASE '/dm/dmdata/DAMENG/dm.ini' FROM BACKUPSET '/dm/dmbak/db_full_bak_01';
恢復 db_magic,執行以下命令:
RMAN>RECOVER DATABASE '/dm/dmdata/DAMENG/dm.ini' UPDATE DB_MAGIC;
2、增備的恢復還原
可以使用with backupdir關鍵字指定基備份集搜尋目錄(指定基備份集的上層目錄),還原資料庫。啟動 DMRMAN,執行以下命令:
RMAN> restore database '/dm/dmdata/DAMENG/dm.ini' from backupset '/dm/dmbak/db_increment_bak_02' with backupdir '/dm/dmbak';
恢復資料庫,執行以下命令:
RMAN> recover database '/dm/dmdata/DAMENG/dm.ini' from backupset '/dm/dmbak/db_increment_bak_02';
恢復 db_magic,執行以下命令:
RMAN> recover database '/dm/dmdata/DAMENG/dm.ini' update db_magic;
3、基於歸檔的恢復還原
基於備份集將資料庫還原到備份的時刻:
RMAN> restore database '/dm/dmdata/DAMENG/dm.ini' from backupset '/dm/dmbak/db_full_bak_01';
基於歸檔 將資料庫恢復到最新 狀態 :
RMAN> recover database '/dm/dmdata/DAMENG/dm.ini' with archivedir '/dm/dmarch';
庫級還原和恢復需要更新資料庫魔數:
RMAN> recover database '/dm/dmdata/DAMENG/dm.ini' update db_magic;
4、恢復到指定的時間
基於備份集將資料庫還原到備份的時刻:
RMAN> restore database '/dm/dmdata/DAMENG/dm.ini' from backupset '/dm/dmbak/db_full_bak_01';
使用RECOVER DATABASE…UNTIL TIME命令恢復到指定的時間:
RMAN>RECOVER DATABASE '/dm/dmdata/DAMENG/dm.ini' WITH ARCHIVEDIR'/dm/dmarch' UNTIL TIME'2021-08-07 10:56:40';
庫級還原和恢復需要更新資料庫魔數:
RMAN> recover database '/dm/dmdata/DAMENG/dm.ini' update db_magic;
總結
更多資訊可前往達夢官網社群
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70017567/viewspace-2894028/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Mysql備份與恢復(2)---邏輯備份MySql
- MySQL備份與恢復——基於MyDumper/MyLoader 邏輯備份恢復MySql
- MySQL備份與恢復——基於OUTFILE /LOAD DATA 邏輯備份恢復MySql
- 達夢資料庫備份恢復資料庫
- MySQL備份與恢復——基於Xtrabackup物理備份恢復MySql
- Mysql備份與恢復(1)---物理備份MySql
- MySQL 非常規恢復與物理備份恢復MySql
- 詳解叢集級備份恢復:物理細粒度備份恢復
- Oracle邏輯備份與恢復選項說明Oracle
- OceanBase物理備份恢復實踐
- 淺談達夢資料庫的備份與恢復資料庫
- 備份和恢復
- 物理冷備份與恢復的操作命令
- mysql 開發進階篇系列 42 邏輯備份與恢復MySql
- redis 備份和恢復Redis
- KunlunDB備份和恢復
- DM7使用DMRAMN執行備份集恢復
- 阿里面試官:知道 MySQL 邏輯備份與恢復測試麼?阿里面試MySql
- SqlServer備份和恢復(二)SQLServer
- SqlServer 備份和恢復(一)SQLServer
- 【MySQL】MySQL備份和恢復MySql
- PostgreSQL邏輯備份恢復--pg_dump匯出及psql匯入案例SQL
- RAC備份恢復之Voting備份與恢復
- 達夢dimp備份恢復資料庫remap以及檢視錶大小等資料庫REM
- Oracle 備份和恢復介紹Oracle
- innobackupex 部分表備份和恢復
- openGauss-邏輯備份
- 備份與恢復:polardb資料庫備份與恢復資料庫
- 阿里雲RDS物理備份恢復至本地伺服器8.0阿里伺服器
- mydumper備份恢復
- Mysql備份恢復MySql
- 【RMAN】Oracle12c之後,rman備份Dataguard備端恢復可能出現邏輯錯誤Oracle
- gitlab的資料備份和恢復Gitlab
- MySQL備份和恢復方法彙總MySql
- 九 GBase 8a備份和恢復
- MySQL日誌管理,備份和恢復MySql
- MongoDB 邏輯備份工具mongodumpMongoDB
- expdp 邏輯備份指令碼指令碼