之前我们整理了DM DCP 的相关内容:
达梦 DM8 DCP 备考笔记(1) — 理论考试 说明
https://www.cndba.cn/dave/article/108708
达梦 DM8 DCP 备考笔记(2) — 分区表操作
https://www.cndba.cn/dave/article/108710
达梦 DM8 DCP 备考笔记(3) — 外部表操作
https://www.cndba.cn/dave/article/108711
达梦 DM8 DCP 备考笔记(4) — 同义词操作
https://www.cndba.cn/dave/article/108712
达梦 DM8 DCP 备考笔记(5) — 物化视图操作
https://www.cndba.cn/dave/article/108713
达梦 DM8 DCP 备考笔记(6) — 序列操作
https://www.cndba.cn/dave/article/108714
达梦 DM8 DCP 备考笔记(7) — 审计操作
https://www.cndba.cn/dave/article/108715
达梦 DM8 DCP 备考笔记(8) — 快速加载(Fast Loader)操作
https://www.cndba.cn/dave/article/108716
达梦 DM8 DCP 备考笔记(9) — 索引操作
https://www.cndba.cn/dave/article/108717
达梦 DM8 DCP 备考笔记(10) — AWR 操作
https://www.cndba.cn/dave/article/108719
本篇我们来看下达梦数据库中的备份还原操作。 相关理论说明参考《DM8备份与还原》。
1 逻辑备份还原 (dexp、dimp)
1.1 全库导出导入测试
全库导出
[dave@www.cndba.cn ~]$ dexp SYSDBA/dameng123 file=full_%U.dmp log=full_%U.log directory=/dm/dmbackup full=y parallel=4 filesize=128m
[dave@www.cndba.cn ~]$ ll /dm/dmbackup/
总用量 204
-rw-r--r-- 1 dmdba dinstall 197689 10月 31 17:01 full_01.dmp
-rw-r--r-- 1 dmdba dinstall 6654 10月 31 17:01 full_01.log
[dave@www.cndba.cn ~]$
全库导入
[dave@www.cndba.cn ~]$ dimp SYSDBA/dameng123 file=full01.dmp log=dimp%U.log directory=/dm/dmbackup full=y table_exists_action=replace
1.2 用户级导出导入测试
导出用户
[dave@www.cndba.cn ~]$ dexp SYSDBA/dameng123 file=dmhr%U.dmp log=dmhr%U.log directory=/dm/dmbackup owner=dmhr parallel=4 filesize=128m
导入数据到原用户:
[dave@www.cndba.cn ~]$ dimp USERID=SYSDBA/dameng123 FILE=dmhr_01.dmp LOG=dmhr_imp.log directory=/dm/dmbackup owner=dmhr table_exists_action=replace
导入数据到其他用户: remap_schema中的模式名要用大写,否则会导入原来的模式中:
[dmdba@dm2 dmbackup]$ dimp USERID=SYSDBA/dameng123 FILE=dmhr_01.dmp LOG=dmhr_imp.log directory=/dm/dmbackup remap_schema=DMHR:CNDBA table_exists_action=replace
1.3 表级导出导入测试
导出表:
[dave@www.cndba.cn ~]$ dexp cndba/dameng123 file=tables.dmp log=tables.log directory=/dm/dmbackup tables=ustc,hefei
将表导入到原用户下:
[dave@www.cndba.cn ~]$ dimp cndba/dameng123 file=tables.dmp log=tables.log directory=/dm/dmbackup tables=ustc,hefei table_exists_action=replace
将表导入到新用户下:这里连接用户必须是对象的原用户,然后加上remap_schema=DEXP:DIMP 就可以导入到新用户下:
[dave@www.cndba.cn ~]$ dimp cndba/dameng123 file=tables.dmp log=tables.log directory=/dm/dmbackup tables=ustc,hefei table_exists_action=replace remap_schema=CNDBA:DMHR
2 联机备份(SQL备份)
联机备份支持的备份: 数据库、 表空间、表和归档备份;
联机备份支持的还原:表空间、表的还原。 不支持数据库级别的恢复,必须使用DMRAM.
联机备份必须处于归档模式。
2.1 启动归档
[dave@www.cndba.cn ~]$ disql sysdba/dameng123
Server[LOCALHOST:5236]:mode is normal, state is open
login used time : 1.793(ms)
disql V8
SQL> alter database mount;
executed successfully
used time: 0.994(ms). Execute id is 0.
SQL> alter database add archivelog 'DEST=/dm/dmarch,TYPE=local,FILE_SIZE=128,space_limit=0';
executed successfully
used time: 3.147(ms). Execute id is 0.
SQL> alter database archivelog;
executed successfully
used time: 17.865(ms). Execute id is 0.
SQL> alter database open;
executed successfully
used time: 30.472(ms). Execute id is 0.
SQL> select arch_mode from v$database;
LINEID ARCH_MODE
---------- ---------
1 Y
used time: 2.133(ms). Execute id is 6500.
SQL> select arch_name,arch_type,arch_dest,arch_file_size from v$dm_arch_ini;
LINEID ARCH_NAME ARCH_TYPE ARCH_DEST ARCH_FILE_SIZE
---------- -------------- --------- ---------- --------------
1 ARCHIVE_LOCAL1 LOCAL /dm/dmarch 128
used time: 0.603(ms). Execute id is 6501.
SQL>
2.2 数据库备份(不支持还原)
全备:full 参数可以省略,不指定备份类型默认为完全备份。
SQL> backup database backupset ‘/dm/dmbak/full01’;
增量备份
SQL> backup database increment with backupdir ‘/dm/dmbak’ backupset ‘/dm/dmbak/inc_back’;
2.3 表空间备份(不支持还原)
备份表空间:
SQL> BACKUP TABLESPACE CNDBA1 BACKUPSET '/dm/dmbak/cndba_01';
executed successfully
used time: 00:00:03.130. Execute id is 6504.
SQL>
2.4 表备份与还原
备份表不需要服务器配置归档, 没有增量备份。
备份表:
SQL> BACKUP TABLE CNDBA.USTC BACKUPSET '/dm/dmbak/ustc_01';
executed successfully
used time: 00:00:02.865. Execute id is 6508.
SQL>
还原表:
SQL> RESTORE TABLE CNDBA.USTC FROM BACKUPSET '/dm/dmbak/ustc_01';
但如果表上有索引和约束,需要先还原表结构,示例如下:
SQL>RESTORE TABLE CNDBA.USTC STRUCT FROM BACKUPSET '/dm/dmbak/ustc_01';
SQL>RESTORE TABLE CNDBA.USTC FROM BACKUPSET '/dm/dmbak/ustc_01';
3 脱机备份(DMRMAN工具)
3.1 备份数据库
[root@dcp1 ~]# systemctl stop DmServicedcp.service
[dave@www.cndba.cn ~]$ dmrman
dmrman V8
RMAN> backup database '/dm/dmdbms/data/DCP/dm.ini' full backupset '/dm/dmbak/fullbak_01';
backup database '/dm/dmdbms/data/DCP/dm.ini' full backupset '/dm/dmbak/fullbak_01';
file dm.key not found, use default license!
Database mode = 0, oguid = 0
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
EP[0]'s cur_lsn[430902], file_lsn[430902]
Processing backupset /dm/dmbak/fullbak_01
[Percent:100.00%][Speed:0.00M/s][Cost:00:00:04][Remaining:00:00:00]
backup successfully!
time used: 00:00:05.921
RMAN>
创建数据库增量备份:
RMAN> backup database '/dm/dmdbms/data/DCP/dm.ini' increment with backupdir '/dm/dmbak' backupset '/dm/dmbak/incrementbak_01';
backup database '/dm/dmdbms/data/DCP/dm.ini' increment with backupdir '/dm/dmbak' backupset '/dm/dmbak/incrementbak_01';
Database mode = 0, oguid = 0
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
EP[0]'s cur_lsn[430902], file_lsn[430902]
Processing backupset /dm/dmbak/incrementbak_01
[Percent:100.00%][Speed:0.00M/s][Cost:00:00:03][Remaining:00:00:00]
backup successfully!
time used: 00:00:04.991
RMAN>
3.2 数据库还原(restore)和恢复(recover)
联机备份和脱机备份的文件都可以在DMRMAN 中进行恢复。
[dave@www.cndba.cn ~]$ dmrman CTLSTMT="RESTORE DATABASE '/dm/dmdbms/data/DCP/dm.ini' FROM BACKUPSET '/dm/dmbak/fullbak_01'"
dmrman V8
RESTORE DATABASE '/dm/dmdbms/data/DCP/dm.ini' FROM BACKUPSET '/dm/dmbak/fullbak_01'
file dm.key not found, use default license!
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
[Percent:100.00%][Speed:0.00M/s][Cost:00:00:05][Remaining:00:00:00]
restore successfully.
time used: 00:00:05.973
[dave@www.cndba.cn ~]$
[dave@www.cndba.cn ~]$ dmrman CTLSTMT="RECOVER DATABASE '/dm/dmdbms/data/DCP/dm.ini' FROM BACKUPSET '/dm/dmbak/fullbak_01'"
dmrman V8
RECOVER DATABASE '/dm/dmdbms/data/DCP/dm.ini' FROM BACKUPSET '/dm/dmbak/fullbak_01'
file dm.key not found, use default license!
Database mode = 0, oguid = 0
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
EP[0]'s cur_lsn[430902], file_lsn[430902]
no log generates while the backupset [/dm/dmbak/fullbak_01] created
recover successfully!
time used: 450.407(ms)
[dave@www.cndba.cn ~]$ dmrman CTLSTMT="RECOVER DATABASE '/dm/dmdbms/data/DCP/dm.ini' UPDATE DB_MAGIC"
dmrman V8
RECOVER DATABASE '/dm/dmdbms/data/DCP/dm.ini' UPDATE DB_MAGIC
file dm.key not found, use default license!
Database mode = 0, oguid = 0
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
EP[0]'s cur_lsn[430902], file_lsn[430902]
recover successfully!
time used: 00:00:01.013
[dave@www.cndba.cn ~]$
版权声明:本文为博主原创文章,未经博主允许不得转载。