我通过命令行在AIX上新建了一个空的数据库,在db2命令行环境下
执行:connect to dbname
可以连接到数据库。但是执行:connect to dbname user username using pwd
却报下面的错误
SQL1402N Unable to authenticate user due to unexpected system error.
这是为什么???
请各位大虾帮忙
| Law 回复于:2002-12-06 13:30:51 |
| SQL1402N 由于意外的系统错误,不能认证用户。 说明: 与系统管理员联系。在基于 unix 的系统上,文件 db2ckpw 可能没有设置正确的许可权位,或者系统可能已用完交换/调页空间。在 Windows NT 上,DB2 安全服务可能尚未启动。 不能处理此命令。 联合体系统用户:数据源也可能会检测到此情况。 用户的响应: 在基于 unix 的系统上,让系统管理员确保已为 db2ckpw 设置了正确的存取许可权,并且已分配了足够的交换/调页空间。在 Windows NT 上,让系统管理员验证是否已安装并启动了 DB2 安全服务。 自己看着办吧!! |
| kingecg 回复于:2002-12-06 13:35:50 |
| [这个贴子最后由kingecg在 2002/12/06 01:37pm 编辑] 谢谢 Law 兄。 能否解释一下db2ckpw是干什么用的,在什么位置? |
| Law 回复于:2002-12-08 12:15:26 |
| 不清楚可,可能是用户没有设置好吧!!你问问其他高手哈! |
| 大连老K 回复于:2002-12-09 09:13:51 |
| 你最好先查查系统(AIX)的问题,比如:看看几个文件系统是否已满(df -k) |
| hatzhang 回复于:2002-12-09 09:51:11 |
| kingecg,搞定了吗? |
| swardz 回复于:2002-12-09 10:44:03 |
| 检查一下当前用户和instance用户权限 如果你的db2刚升级,把instance也升级一下 |
| mrprogram 回复于:2002-12-09 11:01:24 |
| /db2/db2inst1/sqllib/security目录下的文件所属用户不对,修改其用户属性为以下情况,该问题就解决了 chown -R root db2chpw chown -R root db2ckpw # pwd /db2/db2inst1/sqllib/security # ls -l 总计192 -r-s--x--x 1 db2inst1 db2iadm1 24663 6月22 2001 db2aud -rw-r--r-- 1 db2inst1 db2iadm1 4096 6月22 2001 db2audit.cfg lrwxrwxrwx 1 root system 36 6月22 2001 db2chkau -> /usr/lpp/db2_ 07_01/security/db2chkau -r-s--x--x 1 root db2iadm1 12182 6月22 2001 db2chpw -r-s--x--x 1 root db2iadm1 19624 6月22 2001 db2ckpw -r-x--s--x 1 db2inst1 db2iadm1 32671 6月22 2001 db2flacc |
| kingecg 回复于:2002-12-11 12:14:02 |
| 不好意思,问题已经解决了。 我把db2卸掉,重新安装了一编。 谢谢大家的帮助 |






