1、定时备份数据库
在备份数据库前需要开启归档日志方可备份数据库。
开启归档如下:
alter DATABASE MOUNT;
alter DATABASE ARCHIVELOG;
alter database add archivelog 'DEST=/opt/dmdbms/data/DAMENG/arch, TYPE=LOCAL, FILE_SIZE=64, SPACE_LIMIT=0';
alter DATABASE open;
启动代理
SP_INIT_JOB_SYS(1);
设置每周日、周三 23:00进行全库备份,2020年10月10日00:00开始执行。
call SP_CREATE_JOB('JOB1',1,0,'',0,0,'',0,'');
call SP_JOB_CONFIG_START('JOB1');
call SP_ADD_JOB_STEP('JOB1', 'JOB11', 5, '01000/opt/dmdbms/data/backup', 1, 2, 0, 0, NULL, 0);
call SP_ADD_JOB_SCHEDULE('JOB1', 'JOB111', 1, 2, 1, 9, 0, '23:00:00', NULL, '2020-10-10 00:00:00', NULL, '');
call SP_JOB_CONFIG_COMMIT('JOB1');
设置每周一、周二、周四、周五、周六23:00 进行增量备份,2020年10月10日00:00开始执行。 备份路径:/opt/dmdbms/data/backup 备份基路径:/opt/dmdbms/data/backup
call SP_CREATE_JOB('JOB2',1,0,'',0,0,'',0,'');
call SP_JOB_CONFIG_START('JOB2');
call SP_ADD_JOB_STEP('JOB2', 'JOB22', 5, '11000/opt/dmdbms/data/backup|/opt/dmdbms/data/backup', 1, 2, 0, 0, NULL, 0);
call SP_ADD_JOB_SCHEDULE('JOB2', 'JOB222', 1, 2, 1, 118, 0, '23:00:00', NULL, '2020-10-10 00:00:00', NULL, '');
call SP_JOB_CONFIG_COMMIT('JOB2');
2、定时删除数据库备份
达梦7数据库使用的删除备份系统过程如下:
SP_BATCH_DEL_BAK(''DAMENG'', '''', 1, sysdate-15, -1);
达梦8数据库使用的删除备份系统过程如下:
SP_DB_BAKSET_REMOVE_BATCH('DISK', NOW()-15);
达梦7配置定时删除备份任务如下:
每周日00:05执行删除15天以前的备份,2020年10月10日00:00开始执行。
call SP_CREATE_JOB('JOB_DEL_BAK_TIMELY',1,0,'',0,0,'',0,'定时删除备份');
call SP_JOB_CONFIG_START('JOB_DEL_BAK_TIMELY');
call SP_ADD_JOB_STEP('JOB_DEL_BAK_TIMELY', 'STEP_DEL_BAK', 0, 'SP_BATCH_DEL_BAK(''DAMENG'', '''', 1, sysdate-15, -1);', 1, 2, 0, 0, NULL, 0);
call SP_ADD_JOB_SCHEDULE('JOB_DEL_BAK_TIMELY', 'SCHEDULE_DEL_BAK', 1, 2, 1, 1, 0, '00:05:56', NULL, '2020-10-10 00:00:00', NULL, '');
call SP_JOB_CONFIG_COMMIT('JOB_DEL_BAK_TIMELY');
达梦8配置定时删除备份任务如下:
每周日00:05执行删除15天以前的备份,2020年10月10日00:00开始执行。
call SP_CREATE_JOB('JOB_DEL_BAK_TIMELY',1,0,'',0,0,'',0,'定时删除备份');
call SP_JOB_CONFIG_START('JOB_DEL_BAK_TIMELY');
call SP_ADD_JOB_STEP('JOB_DEL_BAK_TIMELY', 'JOB_DEL_BAK_TIMELY', 0, 'SP_DB_BAKSET_REMOVE_BATCH(''DISK'', NOW()-15);', 1, 2, 0, 0, NULL, 0);
call SP_ADD_JOB_SCHEDULE('JOB_DEL_BAK_TIMELY', 'SCHEDULE_DEL_BAK', 1, 2, 1, 1, 0, '00:05:56', NULL, '2020-10-10 00:00:00', NULL, '');
call SP_JOB_CONFIG_COMMIT('JOB_DEL_BAK_TIMELY');
3、定时删除归档日志
每周日00:05执行删除30天以前的归档日志,2020年10月10日00:00开始执行。
call SP_CREATE_JOB('JOB_DEL_ARCH_TIMELY',1,0,'',0,0,'',0,'定时删除归档日志');
call SP_JOB_CONFIG_START('JOB_DEL_ARCH_TIMELY');
call SP_ADD_JOB_STEP('JOB_DEL_ARCH_TIMELY', 'STEP_DEL_ARCH', 0, 'SF_ARCHIVELOG_DELETE_BEFORE_TIME(SYSDATE - 30);', 1, 2, 0, 0, NULL, 0);
call SP_ADD_JOB_SCHEDULE('JOB_DEL_ARCH_TIMELY', 'SCHEDULE_DEL_ARCH', 1, 2, 1, 1, 0, '02:00:00', NULL, '2020-10-10 00:00:00', NULL, '');
call SP_JOB_CONFIG_COMMIT('JOB_DEL_ARCH_TIMELY');