aix、linux、windows系统下如何查找DB2的端口号

db2安装完成后,tcp/ip连接端口默认为50000,可通过下面的方法确认:

1、使用命令 db2 get dbm cfg |find "SVCENAME" 查找到TCP/IP 服务名

 1.首先切换到db2inst1用户su - db2inst1;  2. 查找TCP/IP Service name  db2 get dbm cfg ; 3.通过上一句命令的输出(如db2c_db2inst1)在/etc/services文件中找对应的端口号 grep db2c_db2inst1 /etc/services; 4.这是你将会看到这么一行从上一句的输出db2c_db2inst1 50000/tcp 其中50000就是db2数据库所占用的端口号

)

2、到系统配置文件里找到service name 对应的 port number
windows:查看 c:\windows\system32\drivers\etc\services                                                                   

    aix:      查看 /etc/services

如下:

DB2_DB2               60000/tcp
DB2_DB2_1          60001/tcp
DB2_DB2_2          60002/tcp
DB2_DB2_END     60003/tcp                                                                                                                        db2c_DB2              50000/tcp

3、使用 netstat -an 命令查找tcp/ip 服务的端口

4、另外附上一个关于linux系统下的查找方法(摘抄帖子):

In JDBC configurations for WPA, you have to specify the port that DB2 is listening on. I usually look for /etc/services or try one of 50000/50001 and it usually works. In SUSE Linux, both the solutions did not work and there was another process (Multithreaded routing toolkit aka mrt) was listening on port 50000.

So how do we find out the DB2 port in a reliable way? Read on...
Step 1: Set the DB2 environment.
$ . ~db2inst1/sqllib/db2profile

Step 2: Find the service name for DB2 instance. It basically involves running "db2 get dbm cfg" command and finding a line containing SVCENAME. 
$ svc=`db2 get dbm cfg | grep SVCENAME | cut -d= -f2 | awk '{print $1}'`

Step 3: Find the service name that you got from Step 2 in /etc/services or %SYSTEMROOT%\system32\drivers\etc\services. That is the port DB2 is listening on.
$ grep $svc /etc/services