-
一.准备工作
-
二.图形化创建作业备份
-
三.命令行创建作业备份
一.准备工作
1.数据库软件安装
准备一台机器已经完成了数据库的安装和初始化实例。
2.创建目录
创建归档目录和备份目录:
创建归档目录
mkdir -p /dmarch
改变dmarch 文件所有者,所有组
chown -R dmdba:dinstall /dmarch
创建备份目录
mkdir -p /dmbak
改变dmbak 文件所有者,所有组
chown -R dmdba:dinstall /dmbak
3.本地归档
联机配置归档:
修改数据库为MOUNT状态:
alter database mount;
配置本地归档:
ALTER DATABASE ADD ARCHIVELOG 'DEST = /dmarch, TYPE = local, FILE_SIZE = 1024, SPACE_LIMIT = 10240';
开启归档模式:
ALTER DATABASE ARCHIVELOG;
修改数据库为OPEN状态:
ALTER DATABASE OPEN;
查询 v$dm_arch_ini、v$arch_status 等动态视图可以获取归档配置以及归档状
态等相关信息。
注意:
联机备份时,关闭已配置的本地归档之后再重新打开,会造成归档文件中部分日志缺失,备份时检查归档文件连续性时将会报错。存在该类操作时,若要避免该错误,备份前需要调用 checkpo int(100)主动刷新检查点。
手动配置归档:
cd /dmdata/DAMENG
vi dm.ini
ARCH_INI = 1
vi dmarch.ini
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /dmarch
ARCH_FILE_SIZE = 128
ARCH_SPACE_LIMIT = 2048
./dmserver /dmdata/DAMENG/dm.ini
exit
目的:启动数据库实例,让数据库运行于归档模式。
二.图形化创建作业备份
1.新建作业备份
首先通过图像化客户端 MANAGER 工具实现作业的创建和配置等操作。 点击代理右击创建代理环境,然后右击作业点击新建作业按钮进入常规设置界面。
点击作业步骤界面。
点击添加进入常规步骤,选择步骤类型备份数据库:
选择高级进行创建:
点击确定后退出作业步骤,选择作业调度:
点击确定完成作业创建。
2.新建作业增量备份
增量备份步骤跟定时备份相同,在创建的时候不同在于常规步骤里面选择不同,选择增量备份,要添加基备份的目录:
3.新建作业定时删除备份集
创建作业的步骤都相同,在作业步骤中选择SQL脚本,添加语句SF_BAKSET_BACKUP_DIR_ADD(''DISK'',''/dmbak'');SF_BAKSET_REMOVE_BATCH (NULL, now()-5, NULL, NULL);
4.查看作业
右击作业s1选择查看历史作业信息。
4.修改删除作业
修改删除同样是右击作业选择:
三.命令行创建作业备份
1.创建作业环境
作业环境初始化
SP_INIT_JOB_SYS(1);
作业环境销毁
SP_INIT_JOB_SYS(0);
2.定时备份
开启定时备份,每周六下午3点45分进行全量备份,从2021年8月7号下午2点58分开始。
call SP_CREATE_JOB('JOB_FULL_BAK_TIMELY',1,0,'',0,0,'',0,'定时全备');
call SP_JOB_CONFIG_START('JOB_FULL_BAK_TIMELY');
call SP_ADD_JOB_STEP('JOB_FULL_BAK_TIMELY', 's1', 6, '01010000/dmbak', 1, 3, 0, 0, NULL, 0);
call SP_ADD_JOB_SCHEDULE('JOB_FULL_BAK_TIMELY', 's2', 1, 2, 1, 64, 0, '15:45:50', NULL, '2021-08-07 14:58:50', NULL, '');
call SP_JOB_CONFIG_COMMIT('JOB_FULL_BAK_TIMELY');
3.增量备份
开启增量备份,每周六下午3点48分进行增量备份,从2021年8月7号下午3点01分开始。
call SP_CREATE_JOB('JOB_INCREMENT_BAK_TIMELY',1,0,'',0,0,'',0,'增量备份');
call SP_JOB_CONFIG_START('JOB_INCREMENT_BAK_TIMELY');
call SP_ADD_JOB_STEP('JOB_INCREMENT_BAK_TIMELY', 's3', 6, '11010000/dmbak|/dmbak', 1, 3, 0, 0, NULL, 0);
call SP_ADD_JOB_SCHEDULE('JOB_INCREMENT_BAK_TIMELY', 's4', 1, 2, 1, 64, 0, '15:48:35', NULL, '2021-08-07 15:01:35', NULL, '');
call SP_JOB_CONFIG_COMMIT('JOB_INCREMENT_BAK_TIMELY');
4.定期删除备份
定期删除备份,每天执行一次,执行时间为下午3点58分,从2021年8月7号起。
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', 's5', 0, 'SF_BAKSET_BACKUP_DIR_ADD(''DISK'',''/dmbak'');SF_BAKSET_REMOVE_BATCH (NULL, now(), NULL, NULL);', 3, 3, 0, 0, NULL, 0);
call SP_ADD_JOB_SCHEDULE('JOB_DEL_BAK_TIMELY', 's6', 1, 1, 1, 0, 0, '15:58:08', NULL, '2021-08-07 15:27:08', NULL, '');
call SP_JOB_CONFIG_COMMIT('JOB_DEL_BAK_TIMELY');
5.查看作业信息
select ID,NAME,ENABLE,USERNAME,CREATETIME,VALID,DESCRIBE from SYSJOB.SYSJOBS;
6.查看步骤信息
select ID,NAME,JOBID,SEQNO,TYPE,COMMAND from SYSJOB.SYSJOBSTEPS;
7.查看调度信息
select ID,NAME,JOBID,ENABLE,TYPE,FREQ_INTERVAL,FREQ_SUB_INTERVAL,STARTTIME,VALID,DESCRIBE from SYSJOB.SYSJOBSCHEDULES;
8.查看作业的执行情况
select NAME,START_TIME,END_TIME,ERRCODE,ERRINFO from SYSJOB.SYSJOBHISTORIES2 order by START_TIME desc;
更多资讯请上达梦技术社区了解: https://eco.dameng.com