达梦数据库备份恢复

1. 登录

disql sysdba/sysdba
2.  查看当前是否处于归档模式(在线热备必须处于归档模式)
SQL>select arch_mode from v$database;
    LINEID     ARCH_MODE
    ---------- ---------
    1          N   

3. 设置归档模式

1) 编辑dm.ini

默认路径: /opt/dmdbms/data/DAMENG/dm.ini

编辑该文件,设置: "ARCH_INI = 1"

2) 设置归档目录

mkdir /opt/dmdbms/data/DAMENG/arch
3) 配置dmarch.ini (/opt/dmdbms/data/DAMENG/dmarch.ini)
[ARCHIVE_LOCAL1] 
    ARCH_TYPE = LOCAL
    ARCH_DEST = /opt/dmdbms/data/DAMENG/arch 
    ARCH_FILE_SIZE = 128 #归档文件大小限制Mb为单位,缺省128M 
    ARCH_SPACE_LIMIT = 0 #空间限制MB为单位,范围1024 ~ 4294967294,默认0表示无空间限制
4) 重启数据库生效
dmserver path=/opt/dmdbms/data/DAMENG/dm.ini
/etc/init.d/DmServiceDMSERVER restart
重新查询,已生效
SQL>select arch_mode from v$database;

    LINEID     ARCH_MODE
    ---------- ---------
    1          Y        

4. create tablespace,user and test tables

1) query tablespace

SQL>SELECT ts.NAME, df.PATH FROM V$TABLESPACE AS ts, V$DATAFILE AS df WHERE ts.ID = df.GROUP_ID;
2) create tablespace
SQL>create tablespace duanbb DATAFILE '/opt/dmdbms/data/DAMENG/DUANBB.DBF' SIZE 128;
3) create user
SQL>create user duanbb identified by duanbb default tablespace "DUANBB";
SQL>grant resource to DUANBB;
4) create tables
SQL>conn DUANBB/DUANBB
SQL>create table t1(ID NUMBER(10), NAME VARCHAR(30));

5. backup/restore
1) database full backup/restore

  a) online backup

SQL>BACKUP DATABASE FULL TO full_bak BAKFILE '/test/duanbb/DM/backup/full.bak';
  b) restore: 对于数据库级的还原只支持脱机还原,不提供联机还原的功能
/etc/init.d/DmServiceDMSERVER stop
./bin/dmrestore INI_PATH=/opt/dmdbms/data/DAMENG/dm.ini FILE=/test/duanbb/DM/backup/full.bak
/etc/init.d/DmServiceDMSERVER start
2) database increment backup/restore

  a) online backup

SQL>BACKUP DATABASE INCREMENT WITH BACKUPDIR '/test/duanbb/DM/backup/' TO inc1 BAKFILE '/test/duanbb/DM/backup/inc1.bak';
  b) restore to backup
/etc/init.d/DmServiceDMSERVER stop
./bin/dmrestore INI_PATH=/opt/dmdbms/data/DAMENG/dm.ini FILE=/test/duanbb/DM/backup/inc1.bak
/etc/init.d/DmServiceDMSERVER start
3) restore to assigned time point
/etc/init.d/DmServiceDMSERVER stop
./bin/dmrestore INI_PATH=/opt/dmdbms/data/DAMENG/dm.ini FILE=/test/duanbb/DM/backup/full_0816.bak TIME="2013-8-16 13:38:50" ARCHIVE_DIR=/opt/dmdbms/data/DAMENG/arch
/etc/init.d/DmServiceDMSERVER start
4) tablespace backup/restore

  a) full backup/restore

    backup:

SQL>BACKUP TABLESPACE duanbb FULL TO duanbb_full_bak BAKFILE '/test/duanbb/DM/backup/ts_duanbb_full.bak';
    restore:
SQL>ALTER TABLESPACE duanbb OFFLINE;
SQL>RESTORE TABLESPACE duanbb FROM '/test/duanbb/DM/backup/ts_duanbb_full.bak';
SQL>ALTER TABLESPACE duanbb ONLINE;

  b) increment backup/restore:

    backup:

SQL>BACKUP TABLESPACE duanbb INCREMENT WITH BACKUPDIR '/test/duanbb/DM/backup' TO duanbb_inc1 BAKFILE '/test/duanbb/DM/backup/ts_duanbb_inc1.bak';
    restore:
SQL>ALTER TABLESPACE duanbb OFFLINE;
SQL>RESTORE TABLESPACE duanbb FROM '/test/duanbb/DM/backup/ts_duanbb_inc1.bak';
SQL>ALTER TABLESPACE duanbb ONLINE;
5) parallel backup

  user 'DUANBB', tablespace: 'DUANBB'
  user 'DSG',    tablespace: 'DSG'
  a) create parallel backup configure file '/test/duanbb/DM/bak.parallel' as followed contents

[DUANBB]=/test/duanbb/DM/backup/duanbb
[DSG]=/test/duanbb/DM/backup/dsg
[default]=/test/duanbb/DM/backup
  b) backup

    full backup

SQL>BACKUP DATABASE FULL TO PARA_BAK_1 BAKFILE '/test/duanbb/DM/backup/parallel1.bak' PARALLEL '/test/duanbb/DM/bak.parallel';
    increment backup
SQL>BACKUP DATABASE INCREMENT WITH BACKUPDIR '/test/duanbb/DM/backup/' TO para_inc1 BAKFILE '/test/duanbb/DM/backup/para_inc1.bak';
  c) restore
/etc/init.d/DmServiceDMSERVER stop

./bin/dmrestore INI_PATH=/opt/dmdbms/data/DAMENG/dm.ini FILE=/test/duanbb/DM/backup/parallel1.bak
or

./bin/dmrestore INI_PATH=/opt/dmdbms/data/DAMENG/dm.ini FILE=/test/duanbb/DM/backup/parallel1.bak TIME="2013-8-19 11:28:00" ARCHIVE_DIR=/opt/dmdbms/data/DAMENG/arch
or

./bin/dmrestore INI_PATH=/opt/dmdbms/data/DAMENG/dm.ini FILE=/test/duanbb/DM/backup/parallel1.bak ARCHIVE_DIR=/opt/dmdbms/data/DAMENG/arch    

/etc/init.d/DmServiceDMSERVER start


还要特别注意的是,如果该数据库自最近一次还原以来还没有进行过备份,则增量备份也无法进行,

这是因为考虑到系统的最近那一次的还原会使以前的备份对于当前系统都失效,鉴于这一点,系统管理员在每次系统还原后就立即作一次完全备份是一个很好的习惯。

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

duanbeibei

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值