嗨,我已经配置了系统DSN,它运行良好。所以我忘记了主机名地址和端口号,怎么能通过它找到它?当我选择数据源并单击configure时,它只告诉我用户ID和dbalias。我也看了注册表,只找到这样的东西
“Windows注册表编辑器版本5.00
[HKEY_LOCAL_MACHINE \ SOFTWARE \ ODBC \ ODBC.INI \ BUS] “驱动程序”= “C:\ PROGRA〜1 \ IBM \ SQLLIB \ BIN \ DB2CLIO.DLL”
“”“
答案 0 :(得分:8)
DB2数据库连接由计算机上的DB2客户端软件配置。在客户端软件中定义连接后,它们将显示在“ODBC数据源”面板中。您无法通过控制面板进行配置。
要查看它们,请打开DB2命令窗口,然后发出命令db2 list db directory
。这将列出您的系统知道的所有数据库:
C:\Program Files\IBM\SQLLIB\BIN>db2 list db directory
System Database Directory
Number of entries in the directory = 2
Database 1 entry:
Database alias = SAMPLE
Database name = SAMPLE
Node name = DB2AED1
Database release level = 10.00
Comment =
Directory entry type = Remote
Catalog database partition number = -1
Alternate server hostname =
Alternate server port number =
Database 2 entry:
Database alias = IBMDSMR
Database name = IBMDSMR
Local database directory = C:
Database release level = 10.00
Comment =
Directory entry type = Indirect
Catalog database partition number = 0
Alternate server hostname =
Alternate server port number =
在上面的示例中,“目录条目类型”表示数据库是本地的(“间接”),即您的计算机上是否运行了DB2服务器),或者数据库是否为远程(“远程”),比如上面的SAMPLE
数据库。
要查看SAMPLE
的连接详细信息,请记下节点名称(上例中的DB2AED1
)并发出db2 list node directory
命令:< / p>
C:\Program Files\IBM\SQLLIB\BIN>db2 list node directory
Node Directory
Number of entries in the directory = 1
Node 1 entry:
Node name = DB2AED1
Comment =
Directory entry type = LOCAL
Protocol = TCPIP
Hostname = mydb2.stackoverflow.com
Service name = 50000
您可以看到DB2AED1
位于主机mydb2.stackoverflow.com
和端口50000
上。如果由于某种原因,“服务名称”字段有一个名称,那么您需要在服务文件中查找(Windows上的%windir%\system32\drivers\etc\services
或Linux上的/etc/services
)