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

相关推荐
YDS8296 分钟前
MYSQL —— 约束和多表查询
数据库·mysql
The star"'10 分钟前
MariaDB数据库管理
数据库·mariadb
无名指的等待71242 分钟前
Redisson的Lock和TryLock的区别
java·开发语言·数据库
码农学院1 小时前
Excel批量导入到数据库的方法
数据库·oracle·excel
曾经的三心草1 小时前
实验指导-基于阿里云函数计算的简单邮件发送服务 之数据库访问中间件
数据库·阿里云·中间件
RestCloud2 小时前
MongoDB到关系型数据库:JSON字段如何高效转换?
数据库·mysql·mongodb
洲覆2 小时前
Redis 64字节分界线与跳表实现原理
数据结构·数据库·redis·缓存
失因2 小时前
Nginx 特性、配置与实战部署
运维·数据库·nginx
chirrupy_hamal2 小时前
PostgreSQL 流复制参数 - synchronous_commit
数据库·postgresql
lang201509282 小时前
MySQL InnoDB表压缩:性能优化全解析
数据库·mysql