为 UNIX 创建 Informix 数据库服务器

可以在安装机器或远程主机上创建数据库服务器。安装程序通常在安装机器上创建数据库服务器。但是,并不要求您这样做。如果机器符合系统要求并且可以看到该平台的有效安装目录(例如,本地目录或 NFS 安装目录),那么可以使任何主机成为数据库服务器。

开始之前

创建数据库服务器之前,请参阅准备 Informix 数据库服务器

关于此任务

例如,Solaris 的安装目录是 solaris1 机器上的 /usr/local/ccm72,而您想要在 solaris2 上创建一个数据库服务器,那么就可以在 solaris2 上挂装 NFS 安装目录。然后,在 solaris2 创建数据库服务器。创建数据库服务器时将自动向 Solaris 安装目录中的 sqlhosts 文件添加 solaris2 的条目。

您可以允许数据库服务器运行适用于其他平台类型的服务器进程。例如,要使 AIX®数据库服务器 aix1 可作为 Solaris 9 或 Solaris 10 机器的数据库服务器,请将 aix1 条目手动添加到 Solaris 9 或 Solaris 10 安装目录下的 sqlhosts 文件中。

注: 在安装机器之外的另一台机器上创建数据库服务器时,确保正确配置数据库服务器。请参阅修改数据库服务器参数值

过程

要为 UNIX 创建数据库服务器:

  1. root 用户的身份登录到数据库服务器。

    如果数据库服务器就是安装机器,那么您已作为 root 用户登录。

  2. 为 Informix® 数据库空间 (chunkfiles) 创建目录。

    informix_chunkfiles 替换为 Informix 块文件的路径。创建块文件时:

    • 将块文件放在任何人都无法将其除去的位置。
    • 在将运行数据库服务器的机器上创建块文件目录(例如 /data/informix_chunkfiles)。
    • 为了获得最佳性能和可靠性,请使用 Informix 块文件的原始分区。(如果出现罕见的系统崩溃,那么熟文件将受到影响,而原始文件则不会受影响。)
    • 确保块文件路径名称包含的字符少于 66 个。
    • 块文件大小的上限值为 4 TB(太字节)。如果需要大于 4 TB 的容量,请联系 IBM® Rational® 软件支持人员
    注意: 不要将 Informix 数据文件备份为普通 UNIX 文件。避免将该目录放在安装目录 $CCM_HOME 或者主目录 ccm_rootinformix 下。

    请参阅 Informix 块文件,以获取关于创建块文件的更多信息。

    root# mkdir informix_chunkfiles
    root# chown informix informix_chunkfiles
    root# chgrp informix informix_chunkfiles
    root# chmod 770 informix_chunkfiles
  3. 为 Rational Synergy 数据库创建目录。

    ccmdb 替换为数据库目录。例如, /data/ccmdb

    注意: 避免将数据库目录放在安装目录下。如果有必要,并且 ccm_root 主目录不在安装目录下,那么可以在 ccm_root 主目录下创建该目录。
    root# mkdir ccmdb
    root# chown ccm_root ccmdb
    root# chgrp ccm_root ccmdb
    root# chmod 755 ccmdb
  4. 创建数据库服务器。

    您可以采用交互方式或通过使用配置文件创建数据库服务器。

    使用步骤 2 中创建的目录 (informix_chunkfiles) 作为 root 数据库空间的主块路径。然后,除用户数量外,其余都使用缺省值。设置为该服务器上所有数据库的预期并行用户数。向上四舍五入到最接近的 10。

    块文件路径名必须少于 66 个字符。此外,建议每个用户的 roottemplog 数据库空间的缺省空间大约为 1 MB。对于 ccm 数据库空间,每个用户大约为 2 MB。因此,对于缺省的 40 个用户,总计约 220 MB。

    输入 CPU 数量、用户数量和服务器编号的有效值。

    注: 如果安装了其他 Informix(不管处于活动状态还是非活动状态),那么 ccmsrv create 试图使用的缺省服务器编号可能已在使用。日志文件中将显示如下所示的错误:
    11:13:05  shmget: [EEXIST][17]: key 52574801: shared
    memory already exists
    11:13:05  mt_shm_init: can't create resident segment

    可以通过使用其他服务器编号来纠正此问题。

    另外,如果需要增加共享内存内核参数的大小,那么可能会在日志文件中看到如下所示的错误。

    16:53:12  shmat: [EMFILE][24]: out of shared memory
    segments, check system SHMSEG
    16:53:12  mt_shm_init: can't create resident segment

反馈