数据库未在DB2中列出

时间:2013-08-07 23:21:11

标签: db2 db2-luw

我在AIX服务器上有一些关于DB2的数据库。

我以DB2实例用户ID“chandroo”登录(登录时自动设置db2profile)并发出如下命令并且没有结果。

chandroo@xxxxxxxx::/db2/chandroo> db2 list db directory
chandroo@xxxxxxxx::/db2/chandroo>

但是,如果我直接从安装目录调用db2,我可以看到这些条目,而且我不清楚它为什么会发生。

chandroo@xxxxxxxxx::/opt/IBM/db2/V9.5/bin> ./db2 list db directory

 System Database Directory

 Number of entries in the directory = 2

Database 1 entry:

 Database alias                       = CHANDB
 Database name                        = CHANDB
 Local database directory             = /db2/chandroo/db
 Database release level               = c.00
 Comment                              =
 Directory entry type                 = Indirect
 Catalog database partition number    = 0
 Alternate server hostname            =
 Alternate server port number         =

Database 2 entry:

 Database alias                       = CHAN
 Database name                        = CHAN
 Local database directory             = /db2/chandroo/db
 Database release level               = c.00
 Comment                              =
 Directory entry type                 = Indirect
 Catalog database partition number    = 0
 Alternate server hostname            =
 Alternate server port number         =

chandroo@xxxxxxxxx::/opt/IBM/db2/V9.5/bin>

1 个答案:

答案 0 :(得分:2)

听起来db2profile脚本没有正确获取。需要为当前的AIX shell进程设置该脚本中定义的环境变量,而不是由sh,ksh或bash启动的临时子进程。这是通过指定单个点而不是程序名来运行db2profile脚本来实现的。差异很微妙,但很重要。

如果这是问题,运行此命令将通过正确初始化当前shell进程来解决问题:

. ~chandroo/sqllib/db2profile

db2 list db directory之类的命令将开始工作。

下一步是确定在$HOME/.profile启动脚本中发生的情况。如果您使用上面显示的正确语法看到对db2profile的调用,则$HOME/.profile上的执行权限可能存在问题。