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

相关推荐
昭阳~1 小时前
PostgreSQL日常维护
数据库·postgresql
数据库幼崽1 小时前
MySQL 8.0 OCP 1Z0-908 171-180题
数据库·mysql·ocp
Мартин.1 小时前
[Meachines] [Hard] Dab Enumerate+memcached+ldconfig-Lib-Hijack特權升級+Tyrant
数据库·缓存·memcached
weixin_446260851 小时前
现代化SQLite的构建之旅——解析开源项目Limbo
数据库·sqlite·开源
想你依然心痛2 小时前
Spark大数据分与实践笔记(第五章 HBase分布式数据库-02)
大数据·数据库·分布式·hbase
艺杯羹2 小时前
深入解析应用程序分层及 BaseDao 的封装策略
数据库·sql·mysql·jdbc·应用分层
xiaoqian99972 小时前
MySQL高频面试八连问(附场景化解析)
数据库·mysql·其他·面试
一只码代码的章鱼2 小时前
操作系统 第四章 -1
linux·服务器·数据库
勤劳的进取家2 小时前
论文阅读:Next-Generation Database Interfaces:A Survey of LLM-based Text-to-SQL
数据库·sql
文牧之2 小时前
Oracle Enqueue Names
运维·数据库·oracle