【DB2】SQL1639N 处理

背景

测试环境21套DB2需要创建只读用户并赋予权限,在20套都成功的情况下,有一套报错了,具体细节为,赋权成功,但是使用被赋权的账户连接失败,报错如下

SQL1639N The database server was unable to perform authentication because security-related database manager files on the server do not have the required operating system permissions. SQLSTATE=08001

故障分析过程

使用本地连接不会报错,使用用户连接(走TCPIP)报错

报错 SQL1639N,看描述和系统权限有关

为了排除不是权限的问题,给其又赋予DBADM权限,还是一样的报错,将DBADM权限revoke后,再次尝试,还是报错

在搜索该报错后,得知是安全认证问题,还是和权限有关,但是我们不知道是哪些文件的权限,该环境是其他同事搭建的HA热备,给其打电话询问有没有改过权限,反馈确实改过sqllib/adm和sqllib/lib下的文件权限,将其与正常环境权限对比,发现多处权限不同,确定问题根因后找解决办法,该问题可以使用db2iupdt工具进行更新实例,更新实例后恢复正常

语法:

先停止实例:

db2 force application all
db2stop force

进行实例更新:
/opt/ibm/db2/V10.5/instance/db2iupdt db2inst1

(这里的db2inst1是实例名)

更新后权限恢复

重新连接验证,恢复正常

建议

DB2的有关文件权限不能随意修改

相关推荐
麦聪聊数据38 分钟前
Web 原生架构如何重塑企业级数据库协作流?
数据库·sql·低代码·架构
未来之窗软件服务39 分钟前
数据库优化提速(四)新加坡房产系统开发数据库表结构—仙盟创梦IDE
数据库·数据库优化·计算机软考
Goat恶霸詹姆斯2 小时前
mysql常用语句
数据库·mysql·oracle
大模型玩家七七2 小时前
梯度累积真的省显存吗?它换走的是什么成本
java·javascript·数据库·人工智能·深度学习
曾经的三心草2 小时前
redis-9-哨兵
数据库·redis·bootstrap
明哥说编程3 小时前
Dataverse自定义表查询优化:D365集成大数据量提速实战【索引配置】
数据库·查询优化·dataverse·dataverse自定义表·索引配置·d365集成·大数据量提速
xiaowu0803 小时前
C# 拆解 “显式接口实现 + 子类强类型扩展” 的设计思想
数据库·oracle
讯方洋哥3 小时前
HarmonyOS App开发——关系型数据库应用App开发
数据库·harmonyos
惊讶的猫4 小时前
Redis持久化介绍
数据库·redis·缓存
Apple_羊先森4 小时前
ORACLE数据库巡检SQL脚本--19、磁盘读次数最高的前5条SQL语句
数据库·sql·oracle