批量安全删除满足指定条件的所有库级备份集报错:[-134] 执行码版本不匹配

【问题描述】

在批量删除满足指定条件的所有库级备份集时报错:[-134]: 执行码版本不匹配

call SF_BAKSET_REMOVE_BATCH_S ('DISK', SYSDATE-30,NULL,NULL);

【问题原因】

排查时发现同一台机器上安装了多个不同版本的数据库软件,但只启动了一个 dmap,该报错是由于执行该 sql 的库和已启动的 dmap 版本不一致导致。

【问题解决】

方法一:启动对应版本的 dmap,如果无法直接启动可以关闭已启动的 dmap 服务再次启动需要使用到的 dmap 服务。

方法二:

第一步,如果已启动的 dmap 服务不可关闭需要持续使用,可通过配置 dmap.ini 文件,内容可只配置一行 AP_PORT=4237,避免端口冲突,前台启动或者注册 AP 服务后台启动;

第二步,执行 sp_set_para_value(1,'EXTERNAL_AP_PORT',4237); 设置 dmap 的监听端口;

第三步,执行 call SF_BAKSET_REMOVE_BATCH_S ('DISK', SYSDATE-30,NULL,NULL); 批量安全删除满足指定条件的所有库级备份集。