在 Linux 上设置多处驻留

Linux 上设置多处驻留

您可在同一台计算机上设置多个独立的数据库服务器环境。

完成以下任务可设置多处驻留:

托管多台数据库服务器

多处驻留是指同时存在于一台计算机上的多台数据库服务器以及它们的相关联共享内存和磁盘结构。

在同一台计算机上有多个独立的数据库服务器环境使您能够:

  • 分隔生产和开发环境,以保护生产系统不受开发环境不可预测的性质影响。
  • 隔离敏感应用程序或非常重要的数据库,以增强安全性或提供比大多数数据库所需备份更为频繁的备份。

    在使用多处驻留时,每个数据库服务器都有它自己的配置文件。因此,您可以为每个数据库服务器创建一个配置文件,以满足其在备份、共享内存使用和调整优先级方面的特殊需求。

  • 在一台计算机上测试分布式数据事务。如果正在开发要在网络上使用的应用程序,那么可以在一台计算机上使用本地回送来执行分布式数据模拟和测试。(请参阅《IBM Informix Dynamic Server 管理员指南》中有关使用本地回送连接的信息。)之后,网络就绪时,就可以使用该应用程序而不需要再更改应用程序源代码。

规划多处驻留

在同一台计算机上运行多台数据库服务器不如运行一个数据库服务器时效率高。您需要在分隔数据库服务器的优点与额外的性能代价之间寻找平衡点。

在一台计算机上规划多处驻留时,请考虑以下因素:

  • 内存

    每个数据库服务器需要它自己的内存。请确保您的计算机能处理数据库服务器对内存的更多使用需求。

  • 存储空间

    每个数据库服务器必须有其唯一的存储空间。不能将同一磁盘空间用于数据库服务器的多个实例。在准备额外的数据库服务器时,必须重复一些在安装第一个数据库服务器时所作的规划。例如,考虑以下问题:

    • 您将使用的是缓存文件还是未缓存文件?未缓存文件是否将与其他应用程序共享磁盘分区?(有关缓存和未缓存文件的更多信息,请参阅《IBM® Informix® 管理员指南》中有关直接磁盘访问的部分。)
    • 是否使用镜像?镜像驻留在哪里?
    • 消息日志驻留在哪里?
    • 是否专用一台磁带机作为此数据库服务器的逻辑日志?
    • 将执行何种备份?

创建数据库服务器的多处驻留

在设置多处驻留前,必须按在 Linux 上安装 Dynamic Server Express 中的描述安装一台数据库服务器

要点: 不需要安装数据库服务器二进制文件的多个副本。一台计算机上相同版本的数据库服务器的所有实例可以共享相同的二进制文件。

要创建数据库服务器的多处驻留:

  1. 准备一个新的配置文件并将 ONCONFIG 环境变量设置为新文件名(请参阅设置特定于实例的 ONCONFIG 文件)。
  2. 可选:为该新数据库服务器实例设置连接(请参阅 TCP/IP 连接)。
  3. 为该新数据库服务器实例初始化磁盘空间(请参阅防止数据被覆盖)。
  4. 为多处驻留准备备份环境(请参阅为多处驻留准备备份环境)。
  5. 修改操作系统启动脚本,以自动启动该新数据库服务器实例(请参阅为多个服务器实例修改操作系统启动)。
  6. 为用户检查 INFORMIXSERVER 环境变量(请参阅重新设置 INFORMIXSERVER 环境变量)。

设置特定于实例的 ONCONFIG 文件

每个数据库服务器实例都必须有其自己的 onconfig 配置文件。制作 onconfig 文件的副本,该副本具有新数据库服务器的您需要的基本特征。向新文件指定一个可以方便地与其功能关联的名称。例如,您可以选择文件名 onconfig.acct 来为包含记帐信息的生产系统指定配置文件。

ONCONFIG 环境变量设置为新 onconfig 文件的名称。请仅指定文件名而不是整个路径。

在新配置文件中,设置以下配置参数:

SERVERNUM
指定与数据库服务器配置相关联的整数(在 0 到 255 之间)。同一台主机上的数据库服务器的每个实例都必须具有唯一的 SERVERNUM 值。有关 SERVERNUM、DBSERVERNAME 和 ROOTPATH AND ROOTOFFSET 参数的更多信息,请参阅《IBM Informix Dynamic Server 管理员指南》。
DBSERVERNAME
指定数据库服务器的名称。建议您使用提供关于数据库服务器信息的名称,例如 ondev37hostnamedev37
MSGPATH
指定数据库服务器的消息文件的路径名。您应该为消息文件指定唯一路径名,因为数据库服务器消息不包括数据库服务器名称。如果多台数据库服务器使用相同的 MSGPATH 参数,那么您无法识别不同数据库服务器实例的消息。例如,如果将数据库服务器命名为 ondev37,那么可以将 /usr/informix/dev37.log 指定为此数据库服务器实例的消息日志。
ROOTPATH 和 ROOTOFFSET
一起使用,指定数据库服务器的根数据库空间的位置。根数据库空间位置对于每个数据库服务器配置来说必须是唯一的。

如果在同一分区中放入若干根数据库空间,那么可对 ROOTPATH 参数使用相同的值。但是,在这种情况下,您必须设置 ROOTOFFSET 参数以使 ROOTSIZE 和 ROOTOFFSET 参数的组合值定义分区的唯一部分。

您不需要更改 ROOTNAME。即使这两个数据库服务器的根数据库空间均名为 rootdbs,但是数据库空间却是唯一的,因为 ROOTPATH 指定唯一的位置。

有关 SERVERNUM、DBSERVERNAME、ROOTPATH 和 ROOTOFFSET 参数的更多信息,请参阅《IBM Informix Dynamic Server 管理员指南》中的配置参数文档。

您还需要设置 MIRRORPATH 和 MIRROROFFSET 参数。如果对根数据库空间制作了镜像,那么根数据库空间镜像的位置必须唯一。有关 MIRRORPATH 和 MIRROROFFSET 参数的信息,请参阅《IBM Informix Dynamic Server 管理员指南》。

TCP/IP 连接

如果使用 TCP/IP 通信协议,那么可能需要将条目添加到新数据库服务器实例的 services 文件。如果使用 IPX/SPX 通信协议,那么可能需要修改 NetWare 服务器的连接信息。

sqlhosts 文件必须具有对应于每个数据库服务器的条目。如果其他计算机上的 IBM® Informix® 产品访问此数据库服务器实例,那么其他计算机上的管理员必须更新其 sqlhosts 文件。

如果打算将 TCP/IP 网络连接与数据库服务器实例一起使用,那么系统网络管理员必须更新 hostsservices 文件。如果您使用 IPX/SPX 网络,那么 NetWare 管理员必须更新 NetWare 文件服务器信息。

有关这些文件的信息,请参阅《IBM Informix Dynamic Server 管理员指南》中有关客户机/服务器通信的章节。

防止数据被覆盖

在初始化磁盘空间之前,请检查 ONCONFIG 环境变量的设置。如果未正确设置该变量,那么您可能会覆盖另一个数据库服务器的数据。当您为某个数据库服务器初始化磁盘空间时,该数据库服务器会初始化在当前配置文件中指定的磁盘空间。

要点: 在为数据库服务器创建新 blob 空间或数据库空间时,请将每个块指定到设备上的一个唯一位置。在单个数据库环境中,数据库服务器不允许将多个块指定到同一位置,但是您必须确保属于不同数据库服务器的块不会相互覆盖。

为多处驻留准备备份环境

根据您的备份方法,必须为多处驻留准备备份环境。

ON-Bar 实用程序备份

ON–Bar 实用程序允许您将各个数据库服务器实例的数据备份到单个存储设备(如果存储管理器允许的话)。存储管理器跟踪已备份的数据。但是,请在不同存储设备上保留存储空间和逻辑日志备份。

ontape 实用程序备份

使用多处驻留时,必须为每个数据库服务器实例维护不同存储空间和逻辑日志备份。

如果可以对每个数据库服务器指定专门的磁带机,那么使用连续的日志记录选项来备份逻辑日志文件。否则,您必须仔细规划存储空间和逻辑日志备份调度,以便使用一个数据库服务器实例的设备不会导致其他数据库服务器实例等待。每次从备份一个数据库服务器实例切换为备份另一个实例时都必须重新设置 ONCONFIG 配置参数。

为多个服务器实例修改操作系统启动

您可以要求系统管理员修改系统启动脚本,以便每个数据库服务器实例都在重新引导计算机时(例如,电源发生故障后)启动。 有关启动脚本的更多信息,请参阅《IBM® Informix® 管理员指南》中有关准备启动和关闭脚本的部分。

要启动第二个数据库服务器实例,请将 ONCONFIGINFORMIXSERVER 环境变量更改为指向第二个数据库服务器的配置文件,然后运行 oninit 命令。不要更改 INFORMIXDIRPATH 变量。

同样,您可以要求系统管理员修改关闭脚本,从而使数据库服务器的所有实例都正常关闭。

重新设置 INFORMIXSERVER 环境变量

如果某个数据库的新实例应该是缺省数据库服务器,那么必须重新设置 INFORMIXSERVER 环境变量。

出处:http://publib.boulder.ibm.com/infocenter/idshelp/v115/topic/com.ibm.expr.doc/ids_in_045x.htm

发表评论