Ale*_*lex 0 database db2 database-connection
我想在Windows 7机器上设置db2服务器,我无法从远程连接到数据库,只能从本地连接到数据库.我想我可能会错过一些配置.
1)我关闭了防火墙2)我的数据库信息是:
数据库2条目:
Database alias = SAMPLE
Database name = SAMPLE
Local database directory = C:
Database release level = f.00
Comment =
Directory entry type = Indirect
Catalog database partition number = 0
Alternate server hostname =
Alternate server port number =
Run Code Online (Sandbox Code Playgroud)
netstat -a命令的部分输出是:
TCP [::]:49155 WIN-whatever:0 LISTENING
TCP [::]:49164 WIN-whatever:0 LISTENING
TCP [::]:49165 WIN-whatever:0 LISTENING
TCP [::]:50000 WIN-whatever:0 LISTENING
Run Code Online (Sandbox Code Playgroud)
从客户端,如果我ping我的服务器它没有响应另外如果我用nmap -sV <server_ip_address>它扫描它不会返回我打开端口和使用它的服务
从客户端到连接,我运行以下命令:
db2 list node directory
SQL1027N The node directory cannot be found.
catalog tcpip node <i am not sure what does here> remote <server_ip_address> server <port_number>
no output
Run Code Online (Sandbox Code Playgroud)
这意味着出了问题.我为节点尝试了几件事,没有任何作用我不知道发生了什么以及如何解决它.
谢谢你的帮助
mus*_*cio 12
首先,您不能ping服务器并且nmap看不到开放端口这一事实意味着您的问题,至少在此时,是在DB2之外.解决网络问题后,您可以按照以下步骤通过TCP/IP建立与DB2数据库的远程连接.
1)可选.您可以使用服务名称或端口号来配置DB2实例.如果要使用服务名称,请在服务器上添加一行,/etc/services类似于db2c_db2inst1 50000/tcp,将服务名称"db2c_db2inst1"分配给端口50000.
2)在服务器上更新DB2实例配置:( db2 update dbm cfg using svcename db2c_db2inst1或者db2 update dbm cfg using svcename 50000如果不使用服务名称).验证:db2 get dbm cfg | grep SVCENAME.
3)在服务器上更新DB2注册表变量:db2set DB2COMM=TCPIP.验证:db2set DB2COMM.
4)在服务器上重新启动实例:问题db2stop force,然后db2start.
5)在远程客户端上,假设安装了DB2客户端软件,发出问题db2 catalog tcpip node whatever remote <your server IP address> service <your DB2 port number>.请注意,节点名称(本例中的"任何")限制为8个ASCII字符.
6)在远程客户端问题上db2 catalog database <your database name> at node whatever,参考您在步骤5中定义的节点名称("任何").
7)在远程客户端验证连接:db2 connect to <your database name> user <user name> using <password>
| 归档时间: |
|
| 查看次数: |
20271 次 |
| 最近记录: |