在Linux上利用数据分区功能提高可伸缩性和性能
2009-12-23 15:00:13 来源:WEB开发网更新 DB2 实例参数
使用 instance owner ID 登录到机器,并指定 DB2 将使用哪些协议。为了初始化协议,需要使用以下命令更新 DB2COMM profile 注册表变量:
db2set DB2COMM=TCPIP
此外,需要在数据库管理器(DBM)配置参数中更新服务名,以指示哪些端口名将用于与 DB2 服务器和远程客户机的通信。这可以通过使用以下命令来完成:
db2 update dbm cfg using SVCENAME db2c_db2inst1
创建 DB2 Administration Server (DAS)
如果要使用诸如 Configuration Assistant、Control Center、Replication Center 或 Development Centermust 之类的 GUI 工具,则必须让 DAS 处于运行状态。您可以作为 DAS 用户登录,然后使用以下命令创建一个 DAS 服务器:
cd /opt/IBM/db2/V8.1/instance
./dascrt -u dasusr1
其中选项 -u 指定 DAS 的用户 ID。
可以用 DAS 管理用户 ID 登录,并执行命令 db2admin start 来启动 DAS 服务器。若要自动启动 DAS 服务器,则需要使用 DAS 管理用户 ID 并执行以下命令:
cd /opt/IBM/db2/V8.1/instance
./dasauto -on
为了显示 autostart 状态,可以执行:
./dasauto ?
更新 db2nodes.cfg 文件
最后,需要更新 $HOME/sqllib/db2nodes.cfg 文件。db2nodes.cfg 文件包含配置信息,告诉 DB2 哪个服务器上的哪个分区参与了该实例。该文件有四列:
数据库分区号
服务器主机名
逻辑端口号
用于分区之间通信的网络接口(可选)
每个条目表示一个特定服务器上的一个数据库分区,该分区参与了该实例的数据库分区。例如,下面的 db2nodes.cfg 文件定义了四个数据分区。数据分区 0 和 1 在 server1 上,数据分区 2 和 3 在 server2 上。每个服务器有两个逻辑端口(每个逻辑分区对应一个),即端口 0 和 1。
清单 5. 示例 db2nodes.cfg
0 server1 0
1 server1 1
2 server2 0
3 server2 1
更新 .rhosts 文件以允许远程命令
为了允许执行远程命令,每个数据库分区必须有在所有其他参与服务器上执行远程命令的权限。因此,必须在 /db2home/db2inst1/.rhosts 文件中为每个服务器提供一个条目。.rhosts 文件应该有两列,分别为主机名和 instance owner ID。例如, .rhosts 文件中的下列条目表示参与一个实例的两个服务器。
清单 6. 示例 .rhosts
server1 db2inst1
server2 db2inst1
应该使用以下命令来确保只有 root 拥有读和写的访问权:
chmod 600 /db2home/db2inst1/.rhosts
更多精彩
赞助商链接