Chinaunix首页 | 论坛 | 博客
  • 博客访问: 90966887
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: DB2/Informix

2008-04-08 16:09:05

 出处:Unix爱好者家园unix-cd.com  


1.建立informix用户
  建立informix用户,其用户组为informix,用户目录可设为 /usr/Informix

  大体来说informix数据库的安装步骤如下:

* 设置所需环境变量
* 为每一台机器安装软件
* 创建一个sqlhosts 文件
* 配置推荐的核心配置参数
* 准备磁盘空间
* 初始化informix
* 利用oninit初始化online


2.设置环境变量

环境变量

INFORMIXDIR 设置为informix产品所在的目录
PATH 包括INFORMIXDIR/ bin
INFORMIXSERVER 设置为onconfig参数中的DBSERVERNAME值
DBDATE 设置INFORMIX的四位制记年方式

  Informix必须的环境变量如上所示。一般来说,所有环境变量在.profile文件中设置。以下例子中假定DBSERVERNAME 为online:
  在/.profile 、/etc/profile、/usr/informix/.profile中设置以下变量:
  INFORMIXDIR=/usr/informix
  INFORMIXSERVER=online
  TERM=ansi
  PATH=$PATH:/usr/informix/bin
  export INFORMIXDIR INFORMIXSERVER TERM PATH

3.安装盘挂载
  将Informix安装盘挂载到系统中
  命令为mount /dev/cd0 /mnt (以超级用户root执行此命令)

4.安装产品
  4.1安装INFORMXI--SQL
  将informix安装盘挂载到/mnt目录下以后,依次执行以下命令进行安装:
  cd /usr/informix
  cpio -icvdumBI/mnt/SQL.CPI .

#./installsqlrt


  当出现下面的提示时, 按回车键继续进行安装:

Press Enter to continue
Or the interrupt key(usually CTRL-C or DEL)to abort


  之后系统要求输入INFORMIX-SQL产品的序列号和活动码:

Enter your serial number(e.g.INF#X999999)
AAA#X000000
Enter your serial number key(uppercase letters only)
XXXXXX


  安装程序设置完系统文件的权限并对相关文件进行初始化完毕后, 结束INFORMIX-SQL系统的安装工作。

  4.2 安装INFORMIX-ONLINE

cd /usr/informix
cpio -icvdumBI/mnt/ONLINE.CPI


  文件拷贝完毕后, 在#号提示符后面输入下面的命令, 执行INFORMIX-ONLINE系统的安装程序:

#./installonline


  当出现下面的提示时, 按回车键继续进行安装:

Press Enter to continue
or the interrupt key(usually CTRL-C or DEL)to abort


  之后系统要求输入INFORMIX-ONLINE产品的序列号和活动码:

Enter your serial number(e.g.INF#X999999)
AAA#X000000
Enter your serial number key(Uppercase letters only)
XXXXXX


  安装程序设置完系统文件的权限并对相关文件进行初始化完毕后, 结束INFORMIX-ONLINE系统的安装工作。

5. 配置INFORMIX参数

  5.1创建sqlhosts文件
  客户机与服务器的连接包括三个部分。环境变量INFORMIXSERVER是指向通讯配置文件内某一条目的指针。通讯配置文件的默认路径和名称为$INFORMIXDIR/etc/sqlhosts。该文件的第一个字段包含了配置参数的DBSERVERNAME的值,该值只能有一个。
也可以通过设置环境变量INFORMIXSQLHOSTS来改变通讯配置文件的存储路径及名称。

  该文件的的记录格式如下:
  #dbservername nettype hostname servicename
  各字段的含义为;
  * dbservername onconfig文件中的DBSERVERNAME的值
  * nettype 对于共享内存连接应设为onipcshm
  对于tli tcp/ip连接应设为ontlitcp
  对于scokets tcp/ip连接应设为onsoctcp
  * hostname 机器的主机名
  * servicename 文件/etc/services中的服务名,
  对于采用共享内存方式连接的无用
  
  以下为一例:
  #dbservername nettype hostname servicename
  online onipcshm scosysv aas

  5.2 配置核心参数:
   5.2.1 在单用户下,以超级用户root注册,依次执行如下命令:
    #cd /usr/informix/release
    #more ONLINE_7.2
    然后记录如下参数及后面的值:
    SHMMAX 409600000
    SHMALL 512
    SHMMIN 1
    SHMMNI 100
    SHMSEG 6
    MAXUMEM 524287
    SEMMNI 8192
    SEMMNS 8192
    SEMMAP 8192
    SEMMNU 100
    SEMMSL 25

   5.2.2修改UNIX系统核心参数

    #cd /etc/conf/cf.d
    #cp mtune mtune.bak
    #vi mtune
    {此文件格式如下:
.    *Shared Memory Parameters
    SHMMAX 1048576 131072 80530637
    SHMMIN 1 1 1
    其中:第一列为UNIX系统参数名,第二列为参数当前值,第三列为参数最小值,第四列为参数最大值。}
    然后根据上面记录下来的数据依此检查每个参数,如果:
     Ⅰ. A. 所记录的系统参数名存在;
       B. 所记录的系统参数值在最小值和最大值之间
       则用记录下来的参数值取代此参数的当前值。
     Ⅱ. 如果所记录的参数的值大于最大值,则修改此参数的当前值为最大值。
     Ⅲ. 如果所记录的参数值小于最小值,则不修改此参数值。

   5.2.3 重新连接核心,使新的核心参数生效
    依次执行命令:
    #cd /usr/etc/conf/cf.d
    #./link_unix
    系统提示:
    Do you want this kernel to boot by default?(y/n) 输入:y
    Do you want the kernel environment rebuilt?(y/n) 输入:y
    #reboot
    (**注:进入单用户的方法除关机重启外,也可从多用户状态直接转换。
    转换命令 为: #init 1
    然后按系统提示输入root口令(若无口令则按回车)即可进入单用户**)

6. 准备数据库空间dbspace
  数据库空间的创建一般有分生设备和熟设备两种。此处以生设备为例,在为系统准备磁盘空间时,必须首先设立正确的权限,并且建议最好能为原始设备建立连接,假定为数据库准备的原始空间为data区,通过以下命令来完成创建工作:(此处的data区即为在unix安装过程中创建的分区)
  # cd /dev
  # ln data dbspace
  # ln rdata rdbspace
  # chown informix *dbs*
  # chgrp informix *dbs*
  # chmod 660 *dbs*

7. 数据库初始化
  数据库初始化主要包括初始化磁盘空间和初始化共享内存区。第一步首先是磁盘空间的初始化:
  * 运行onmonitor---parameter--- Initialize

INITIALIZATION: Make desired changes and press ESC to record changes.
Press Interrupt to abort changes. Press F2 or CTRL-F for field-level help.
SHARED MDISK PARAMETERSS

Page Size [ 2] Kbytes Mirror [N]
Server Aliases [
Tape Dev.Temp [/dev/null ]
Block Size [ 16] Kbytes Total Tape Size [ 10240] Kbytes
Log Tape Dev. [/dev/null ]
Block Size [ 16] Kbytes Total Tape Size [ 10240] Kbytes
Stage Blob [ ]

Root Name [rootdbs ] Root Size [ 600000] Kbytes
Primary Path [/dev/dbspace ]
Root Offset [ 0] Kbytes
Mirror Path [ ]
Mirror Offset [ 0] Kbytes
Phy. Log Size [ 30000] Kbytes Log. Log Size [ 15000] Kbytes
Number of Logical Logs [ 6]


Do you wish INFORMIX-OnLine to handle mirroring? (y/n)


  说明:表中带阴影的参数是Informix初始化过程中要修改的参数,具体修改的方法说明如下:
  * 消息和磁带参数设置:
  #系统归档磁带设备:
  Tape Dev.Temp [/dev/null ] 磁带设备路径
  Block Size [ 16] Kbytes 磁带块大小
  Total Tape Size [10240] Kbytes 磁带最大容量
  #日志归档磁带设备:
  Log Tape Dev. [/dev/null ] 日志磁带设备路径
  Block Size [ 16] Kbytes 日志磁带设备大小
  Total Tape Size [10240] Kbytes 输出到磁带的最大数据量
  Stage Blob [ ] INFORMIX的关机缓冲区
  * ROOT初始化参数设置:
  #root dbspace的配置:
  Root Name [rootdbs ] root dbspace的名字
  Root Size root dbspace的大小
  Primary Path [/dev/dbspace ] root dbspace的设备路径
  Root Offset [ 0] Kbytes root dbspace设备的偏移量
  #磁盘镜像配置参数:
  Mirror [ N ] 镜像标志(YES=1,NO=0)
  Mirror Path [ ] 镜像root dbspace的设备路径
  Mirror Offset [ 0] Kbytes 镜像root dbspace设备的偏移量
  #物理日志配置:
  Phy. Log Size [30000] Kbytes 物理日志文件大小
  #逻辑日志配置:
  Log. Log Size [15000] Kbytes 逻辑日志大小
  Number of Logical Logs [ 6] 逻辑日志文件数量
  消息和磁带参数设置中归档磁带设备:Tape Dev.temp、Log Tape Dev应根据具体磁带机的配置情况进行设置,在此将该字段设为 [/dev/null ];

  ROOT初始化参数设置中Primary Path 字段设为 [/dev/rdbspace ],即指向根数据库空间的路径。一般在安装UNIX时,即为其预留出单独的某个分区(此处设分区名为dbspace)。Root Size 即是分配给informix存放数据的空间大小,以Kbyte为单位。它的大小计算如下:
  A.以root注册,使用命令:
  #divvy
  B.记录下Name 为dbspace分区的First Block 和 Last Block
  例:某dbspace空间的First Block值为:750001
  Last Block值为:1253436
  C.计算Root Size的值<=Last Block - First Block+1
  所以,以上面的数据为例,Root Size<=1253436-750001+1=503436
  注意:Root Size的值应能被2整除。

  对于物理日志与逻辑日志和的大小的确定有以下几个原则:
  * Phy. Log Size(物理日志文件大小)= root size/20
  * Log. Log Size (单个逻辑日志大小) = Phy. Log Size /2
  * Number of Logical Logs [ 6] (逻辑日志文件数量)

  * 修改完毕后按ESC键确认,如果参数配置有不合理之处,光标将停留在相应字段处。如果设置正确将进行下一步:共享内存的初始化:

  ------Shared-Memory

SHARED MEMORY: Make desired changes and press ESC to record changes.
Press Interrupt to abort changes. Press F2 or CTRL-F for field-level help.
SHARED MEMORY PARAMETERS

[0 ] Server Name [online ]
Server Aliases [
Dbspace Temp [ ]
Deadlock Timeout [60 ] Secs Number of Page Cleaners [ 1 ]
Forced Residency [ N ] Stack Size (K) [ 3 2]
Non Res. SegSize (K) [8000] Optical Cache Size (K) [ 0 ]

Dbspace Down Option [ 2 ]
Preserve Log For Log Backup [ N ]
Heterogeneous Commit [N] Transaction Timeout [ 300 ]
Physical Log Buffer Size [ 32]K Long TX HWM [ 50 ]
Logical Log Buffer Size [ 32]K Long TX HWM Exclusive [ 60 ]
Max # of Logical Logs [ 6 ] Index Page Fill Factor [ 90 ]
Max # of Locks [ 2000] Add SegSize (K) [ 8192 ]
Max # of Buffers [ 200] Total Memory (K) [ 0]

Resident Shared Memory size [ 880]Kbytes Page Size [ 2] Kbytes


Enter a unique value to be associated with this version of INFORMIX-OnLine.


   说明:初次配置Informix时此表的参数除将servname 改为 online外不要做任何更改,否则可能导致 Informix初始化的失败。
  * 系统参数配置:
  Server Number [ 0 ] 每个服务器的唯一值
  Server Name [test ] 数据库服务器主名
  Server Aliases [ ] 数据库服务器别名
  Dbspace Temp [ ] 临时数据库空间
  Deadlock Timeout [ 60 ] 在分布环境下等待锁的最长时间
  Forced Residency [ N ] 强制驻留标志
  Stack Size (K) [ 32 ] 堆栈大小
  Non Res. SegSize (K) [ 8000] 非驻留段大小
  Transaction Timeout [ 300] 交易超时间隔
  Physical Log Buffer Size [ 32] K 物理日志缓冲区大小
  Logical Log Buffer Size [ 32] K 逻辑日志缓冲区大小
  Max # of Logical Logs [ 6] 逻辑日志最大数
  Max # of Locks [ 2000] 锁最大数
  Max # of Buffers [ 200] 缓冲区最大值
  Index Page Fill Factor [ 90] 索引页填充因子
  Resident Shared Memory size [880] Kb共享内存驻留区大小
  Page Size [ 2] Kb页大小

  * 同样的,键入ESC 确认正确后,进入下一步:

PERFORMANCE: Make desired changes and press ESC to record changes.
Press Interrupt to abort changes. Press F2 or CTRL-F for field-level help.
PERFORMANCE TUNING PARAMETERS


Multiprocessor Machine [ N ] LRU Max Dirty [ 60]
Num Procs to Affinity [ 0 ] LRU Min Dirty [ 50]
Proc num to start with [ 0 ] Checkpoint Interval [ 300]
Num of Read Ahead Pages [ ]
CPU VPs [ 1 ] Read Ahead Threshold [ ]
AIO VPs [ ]
Single CPU VP [ N ] NETTYPE settings:
Use OS Time [ N ] Protocol Threads Users VP-class
Disable Priority Aging [ N ] [ipcshm] [ 1] [ 10] [CPU]
Off-Line Recovery Threads [10 ] [ ] [ ] [ ] [ ]
On-Line Recovery Threads [ 1 ] [ ] [ ] [ ] [ ]
Num of LRUS queues [ 8 ] [ ] [ ] [ ] [ ]

Are you running on a multiprocessor machine?


  * 系统参数配置:
  Multiprocessor Machine [N] 0 单处理器,1 多处理器
  CPU VPs [ 1] 用户CPU VPS 数量
  NETTYPE settings: 为NETTYPE配置轮询线索
  Protocol Threads Users VP-class
  [ipcshm] [ 1] [ 10] [CPU]
  说明:此处的参数在初次初始化Informix的时只需修改Protocol Threads Users VP-class,Protocol Threads VP-class 三个参数的设置见上表, usr下的数值应设置成你所购买的数据库的用户数。

  * 键入ESC 确认正确后,进入下一步:

Press Interrupt to abort changes. Press F2 or CTRL-F for field-level help.
DATA REPLICATION PARAMETERS

Interval [ 30]
Timeout [ 30]
Auto [ 0]
Lost & Found [/usr/informix/etc/dr.lostfound ]

Enter the maximum time (in seconds) between data replication buffer flushes.


  * 数据响应参数:
  Interval [ 30] 最大响应间隔时间
  Timeout [ 30] 超时设置
  Auto [ 0] 数据存储自动替换模式
  Lost & Found [/usr/informix/etc/dr.lostfound ] Lost&Found文件存放路径
  说明: 初次初始化Informix时此表参数不必做任何修改

  * 键入ESC 确认正确后,进入下一步:

Press Interrupt to abort changes. Press F2 or CTRL-F for field-level help.
DIAGNOSTIC PARAMETERS

Message Log [/usr/informix/online.log ]
Console Msgs. [/dev/console ]
Alarm Program [/usr/informix/log_full.sh ]

Dump Shared Memory [Y]
Dump Gcore [N]
Dump Core [N]
Dump Count [ 1]
Dump Directory [/tmp ]


Enter pathname for OnLine message log


  * 诊断参数:
  Message Log [/usr/informix/online.log ] 系统消息日志文件路径
  Console Msgs. [/dev/console ] 系统控制台信息路径
  Alarm Program [/usr/informix/log_full.sh ] 报警程序路径及名称
  说明:本表参数的设定值如上表。

  * 以下的初始化设置采用系统默认的配置即可
  按ESC键确认直到出现提示:

Do you really want to continue? (y/n)

WARNING: The ROOT DBspace will be initialized.
All previous data will be destroyed.


  键入y即开始初始化。

  * 初始化完毕后回到菜单:

PARAMETERS: Initialize Shared-Memory perFormance data-Replication diaGnostics pdQ Add-Log Drop-Log
Physical-Log Exit

Initialize root dbspace and shared memory configuration.

-----------------------------Quiescent------- Press CTRL-W for Help.


  此时选择exit退出。

8. 模式转换
  数据库在刚初始化后处于Quiescent(静态)的模式,在使用时应使之处于online(联机)模式。用以下方法可实现切换:
  采用菜单:onmonitor -mode-online

9. 增加开、关机自引导程序
  * 开机自引导程序
  系统启动后,为了使数据库能够正常工作,在对数据库操作之前,必须使用命令oninit对数据库进行共享空间的初始化。通常可以将对INFORMIX数据库系统共享内存的初始化工作放到UNIX的启动程序中,一般在/etc/rc2.d目录下增加起动程序S90oninit,完成INFORMIX数据库系统的初始化工作。S99oninit文件的内容为:
  echo "INFORMIX-ONLINE:oninit…"
  /usr/Informix/bin/oninit
  if [ $? -eq 0 ]
  then echo "okay!"
  else echo "fail!"
  fi
  编辑完此文件后,在执行如下命令为此文件增加可执行权限:
  #chmod +x S90tbinit
  * 增加关机自引导文件
  为了数据的安全,我们在关机之前,应该使用onmode命令将数据库共享空间关闭。为方便起见,我们一般在/etc/rc0.d目录下增加一个文件:K01onmode。文件的内容可以如下:
  echo "INFORMIX-ONLINE:onmode…"
  /usr/informix/bin/onmode -ky
  if [ $? -eq 0 ]
  then echo "OKEY!"
  else echo "FAIL!"
  fi
  编辑完此文件后,在执行如下命令为此文件增加可执行权限:
  #chmod +x K01tbmode
 
至此online数据库的初始化就完成了。

阅读(1067) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~