解决Veeam备份数据到Backup copy服务器报错session log违反了检查约束

背景:备份服务器数据转存到加固服务器时,有两个任务最开始成功,后来一直失败,报错session-log违反检查约束,而其他任务正常。起因是加固服务器之前的空间爆盘导致此两个任务备份失败,隔了很多天才继续备份就开始报错。

解决方法:需要进数据库中删除关于session-log的定义。

复制代码
1、首先关闭Veeam服务(powershell管理员执行)
net stop VeeamBackupSvc
有其他veeam相关服务也最好关闭
2、找到数据库目录,打开管理员cmd切换到对应路径
C:\Users\Administrator>cd C:\Program Files\PostgreSQL\15\bin
C:\Program Files\PostgreSQL\15\bin>psql.exe -h localhost -p 5432 -U postgres -d VeeamBackup
上述数据库账号及库名不知道的话,可以去查注册表:
HKEY_LOCAL_MACHINE\SOFTWARE\Veeam\Veeam Backup and Replication\DatabaseConfigurations
在右侧窗口中,查找以下键值:
‌PostgreSqlPort‌:记录端口号(默认通常为 5432 或动态分配的端口,如 9000+)。
‌PostgreSqlDatabaseName‌:记录数据库名称(默认为 VeeamBackup)。
‌PostgreSqlUser‌:记录用户名(默认为 veeam 或 postgres,具体取决于安装时的设置)。
3、查看是否有session-log
VeeamBackup=# SELECT conname FROM pg_constraint WHERE conname = 'sessionlog_cookie_check';
         conname
-------------------------
 sessionlog_cookie_check
(1 行记录)
VeeamBackup=# SELECT  conname AS constraint_name, pg_get_constraintdef(oid) AS constraint_definition  FROM pg_constraint  WHERE  conname = 'sessionlog_cookie_check';
     constraint_name     |            constraint_definition
-------------------------+----------------------------------------------
 sessionlog_cookie_check | CHECK ((char_length((cookie)::text) <= 260))
(1 行记录)
将CHECK ((char_length((cookie)::text) <= 260))记录下来,若后续备份有问题,可以将此约束加回去
3、删除session-log此约束
VeeamBackup=# ALTER TABLE sessionlog DROP CONSTRAINT IF EXISTS sessionlog_cookie_check;
ALTER TABLE
VeeamBackup=# SELECT conname FROM pg_constraint WHERE conname = 'sessionlog_cookie_check';
 conname
---------
(0 行记录)

****若有添加约束回去的需求,执行以下命令:
ALTER TABLE sessionlog 
ADD CONSTRAINT sessionlog_cookie_check 
CHECK ((char_length((cookie)::text) <= 260))
相关推荐
对象存储与RustFS4 小时前
网盘限速逼你开会员?用 RustFS 自己搭一个不限速的“私人网盘
服务器·后端·docker
众壹新能源科技6 小时前
逆变器自带无功不够用,加装5MVar SVG后功率因数从0.85回到0.99
运维·人工智能·自动化
..Dauntless..6 小时前
【Linux】一切皆文件和缓冲区
linux·运维·服务器
裕晟资质规划6 小时前
三类资质变更报告时限差在哪?军工 15 日、集成印制 10 日
大数据·服务器·网络
QMCY_jason6 小时前
x86 ubuntu2204 无gui 安装 openeuler 2203 aarch64版本
linux·运维·服务器
重生之小比特6 小时前
【Linux系统】12 进程程序替换 自定义Shell 命令行解释器
linux·运维·服务器
轻舟技术A6 小时前
Provider 不属于 Agent 核心:rpi 的分层理由与收益
服务器·网络
考拉讲支付6 小时前
母婴亲子服务平台分账架构设计:多场景多方分账与合规清结算实践
大数据·运维·人工智能·微信小程序·架构·微信公众平台
连山齐名7 小时前
ai应用开发的学习笔记
服务器·笔记·学习
LateFrames7 小时前
“场控软件” 如何容错与运维
运维·容错·led大屏·播控系统·场控软件