解决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))
相关推荐
judezh12 小时前
api 容器一直 unhealthy?我把一个 Agent 运行时的健康检查逐条拆了,查出四个问题
运维·docker
百万蹄蹄向前冲12 小时前
双端同步!云服务器装最新Node.js v26.10全过程追踪
服务器·人工智能·node.js
春天花会开13112 小时前
内网 HTTPS 部署实战:私有 CA + Nginx 反向代理全流程复盘
运维·nginx·https
AllFiles12 小时前
K8s Node Exporter 异常 Write 超时排查实录
运维·后端·kubernetes
虎头金猫6 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
AI职业加油站6 天前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
此冬歌咏6 天前
K8s 节点故障实战:优雅驱逐 31 秒,硬故障 331 秒,以及那个永远 Pending 的 Pod
运维·k8s
-梅6 天前
linux(8) 软硬链接
linux·运维·服务器
Wang's Blog6 天前
Java 项目实战: 外卖平台-文件下载与ServletOutputStream回写浏览器
服务器·项目开发
张洛闻Eren6 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github