如何从AIX上的另一个DB2实例连接远程DB2服务器?

如何从AIX上的另一个DB2实例连接远程DB2服务器?,db2,Db2,我在两个独立的AIX服务器上有两个实例。这两个DB2数据库都提供了它们的示例数据库。我想从另一个实例连接一个DB2实例 我是DB2新手,想知道如何才能做到这一点 我执行了以下命令: 此路径是客户端实例: #. /home/db2inst2/sqllib/db2profile db2 catalog tcpip node db2serverinst remote lpar1 server 50005 remote_instance ctginst1 db2 => terminate DB2

我在两个独立的AIX服务器上有两个实例。这两个DB2数据库都提供了它们的示例数据库。我想从另一个实例连接一个DB2实例

我是DB2新手,想知道如何才能做到这一点

我执行了以下命令:

此路径是客户端实例:

#.  /home/db2inst2/sqllib/db2profile
db2 catalog tcpip node db2serverinst remote lpar1 server 50005 remote_instance ctginst1
db2 => terminate
DB20000I  The TERMINATE command completed successfully.
# db2 connect to db2serverinst user ctginst1
Enter current password for ctginst1: SQL1031N  The database directory cannot be found on the indicated file system.
SQLSTATE=58031

您只对DB2实例进行了编目。您需要在远程服务器上对数据库进行编目:

db2 catalog database XXXX at node db2serverinst
显然,您需要将
XXXX
替换为远程数据库的实际名称。对数据库进行编目后,可以连接:

db2 connect to XXXX user ctginst1
注意,这只定义了连接。如果不配置联合,您将无法从本地实例中的其他数据库访问此远程数据库中的对象。

术语“连接到实例”不正确。正确的方法是连接:

Machine A
 db2inst1
  db-1
  db-2
  sample

Machine B
 db2inst2
  db-3
  db-4
  sample
 db2inst3
  sample
如果要执行从机器A到机器B的命令,必须在db2inst1(目录tcpip节点)中编目db2inst2和/或db2inst3。请记住,必须为每个编目对象指定不同的名称

对远程实例进行编目后,还可以发出数据库命令,但必须对远程数据库进行编目。您可以有远程样本和本地样本,但别名应该不同

如果将db2inst2实例编目为机器A的本地节点中的db2inst2节点。 您在机器A的本地节点中将sample数据库编目为sample-2别名。 您可以在机器A中执行

 db2 attach to db2inst2
 db2 connect to sample-2
“附加”用于“管理”事务,如列表应用程序、创建数据库等。 Connect就是使用数据库。

根据“DB2 Essentials了解大数据世界中的DB2”Raul F.Chong,IBM出版社,2014“用户经常混淆附加到实例和连接到数据库。如果不确定使用哪一个,请确定该操作是影响实例还是影响特定数据库。例如,“列出应用程序”命令将列出连接到活动实例中所有数据库的所有应用程序。这不是在数据库级别执行的操作,因为您希望列出所有数据库的所有连接,因此在这种情况下需要附件“