【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的有关文件权限不能随意修改

相关推荐
SHUIPING_YANG21 分钟前
tp3.1临时连接指定数据库,切片分类in查询,带过滤需要的数据
android·数据库
AA-代码批发V哥42 分钟前
MySQL-DDL语句深度解析与实战指南
数据库·mysql
big狼王44 分钟前
sqlserver存储过程中入参使用JSON
数据库·sqlserver·json
悦数图数据库1 小时前
图数据库如何构筑 Web3 风控防线 | 聚焦批量注册与链上盗转
数据库·web3
gbase_lmax2 小时前
gbase8s数据库获取jdbc/odbc协议的几种方式
数据库
奈斯ing2 小时前
【prometheus+Grafana篇】基于Prometheus+Grafana实现postgreSQL数据库的监控与可视化
运维·数据库·信息可视化·grafana·prometheus
fengfuyao9852 小时前
使用ubuntu串口数据收和发不一致问题
linux·数据库·ubuntu
张童瑶2 小时前
Docker 下备份 Mariadb 数据库文件
数据库·docker·mariadb
Forest_HAHA3 小时前
<8>-MySQL复合查询
数据库·mysql
march of Time3 小时前
图数据库介绍及应用,go和Java使用图数据库
java·数据库·golang