1、 建立informix組和informix用戶,用戶目錄設為 /usr/Informix 超級用戶下把安裝文件夾(例如文件夾名為online)拷入informix目錄 文件夾內容包括:ESQL.CPI SQL7.20.CPI 4GL7.20.CPI IDS.CPI lszhcn.tar Lincese.txt # cat lincese.txt IDS 7.31.UC5-1 S/N: AAC#J900749 KEY: CYJPJX ESQL/C 7.23.UC13 S/N: AAC#J698416 KEY: QSUKKQ 4GL 7.20.UD7 S/N: AAC#J900751 KEY: HRTPJY SQL 7.20.UD7 S/N: AAC#J900752 KEY: AOMXJQ ./installzhc S/N:AAC#J314937 KEY: JCXQJV load line: cpio -icdumvB < /dev/<device name># 在/usr/informix目錄下執(zhí)行 cpio –icdumvB < online/SQL.CPI 等.CPI文件 # INFORMIXDIR=/usr/Informix # export INFORMIXDIR 開始安裝,安裝順序為:SQL > 4GL > ESQL > IDS > ./installzhcn
2、 informix用戶登陸,設置環(huán)境變量 $ vi /usr/Informix/.profile INFORMIXDIR=/usr/informix INFORMIXSERVER=cld3300b_tcp INFORMIXSERVERALIAS=cld3300b_shm ONCONFIG=onconfig.cld3300b export ONCONFIG INFORMIXDIR INFORMIXSERVER INFORMIXSERVERALIAS LD_LIBRARY_PATH=$INFORMIXDIR/lib:$INFORMIXDIR/lib/esql CLIENT_LOCALE=zh_cn.gb DB_LOCALE=zh_cn.gb #SERVER_LOCALE=zh_cn.gb DBDATE=y4md/ TERMCAP=$INFORMIXDIR/etc/Termcap export LD_LIBRARY_PATH CLIENT_LOCALE DB_LOCALE SERVER_LOCALE DBDATE TERMCAP TERM=vt100 PATH=$PATH:$HOME/bin:$INFORMIXDIR/bin # set command search path MAIL=/usr/spool/mail/`logname` # mailbox location LANG=english_us.8859 export TERM PATH MAIL LANG
3、 配置文件的默認路徑和名稱為$INFORMIXDIR/etc/sqlhosts。 該文件的第一個字段包含了配置參數的DBSERVERNAME的值,該值只能有一個。 對于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 cld3300b_tcp ontlitcp surrogat ifx_service cld3300b_shm onipcshm surrogat sqlexec # vi /etc/services 最后添一條ifx_service 23451/tcp
4、配置核心參數 (1)、共享內存配置 # vi /etc/conf/cf.d/mtune (UNIX默認核心參數) # vi /etc/conf/cf.d/stune 修改其中值,即可替代mtune中設置的默認值 參數設置參考以下文檔: # more /usr/Informix/release/en_us/0333/IDS_7.3 需要修改的值如下(根據機子情況而定): INFORMIX-OnLine Shared Memory Parameters (in Bytes): =================================================== SHMMAX: 409600000 SHMMIN: 1 SHMALL: 512 SHMMNI: 100 SHMSEG: 6 Kernel Parameters recommended for Informix ONLINE: ================================================== MAXUMEM:524287 SEMMNI: 8192 SEMMNS: 8192 SEMMAP: 8192 SEMMNU: 100 SEMMSL: 25 我的配置如下: NODE"surrogat" NSPTTYS 64 EVQUEUES72 EVDEVS80 NUMSP256 NSTREAM 4352 NHINODE 1024 GPGSLO2000 GPGSHI6000 PLOWBUFS1024 NSTRPAGES6000 NAIOPROC20 NAIOREQ 400 NAIOBUF 400 NAIOHBUF 100 NAIOREQPP 400 NAIOLOCKTBL 50 MAX_PROC 10000 MAXUMEM 524287 NCALL 256 NCLIST 512 NSTREVENT 14848 NUMTIM 1888 NUMTRW 1888 SDSKOUT 64 SEMMAP 8192 SEMMNI 8192 SEMMNS 8192 SEMMSL 150 SEMMNU 100 SHMMAX 409600000 TTHOG 4096 SECLUID 0 SECSTOPIO 1 SECCLEARID 1 SHMMIN 1 注意事項: #vi mtune {此文件格式如下: ... *Shared Memory Parameters SHMMAX 1048576 131072 80530637 SHMMIN 1 1 1 其中:第一列為UNIX系統(tǒng)參數名,第二列為參數當前值,第三列為參數最小值,第四列為參數最大值。} 然后根據上面記錄下來的數據依此檢查每個參數,如果: Ⅰ、A. 所記錄的系統(tǒng)參數名存在; B. 所記錄的系統(tǒng)參數值在最小值和最大值之間 則用記錄下來的參數值取代此參數的當前值。 Ⅱ. 如果所記錄的參數的值大于最大值,則修改此參數的當前值為最大值。 Ⅲ. 如果所記錄的參數值小于最小值,則不修改此參數值。 (2)、重新連接核心,使新的核心參數生效 依次執(zhí)行命令: #cd /etc/conf/cf.d #./link_unix 系統(tǒng)提示: Do you want this kernel to boot by default?(y/n) 輸入:y Do you want the kernel environment rebuilt?(y/n) 輸入:y #reboot
5、準備數據庫空間dbspace (1)、通常采用的方式是Raw Device,也稱“裸設備”,就是在安裝Unix磁盤時,用divvy命令在磁盤分區(qū)中建立一塊Non FS分區(qū),對此分區(qū)的大小預先要估算好。Online系統(tǒng)對“裸設備”的管理比Unix文件系統(tǒng)的管理效率高很多。 在為系統(tǒng)準備磁盤空間時,必須首先設立正確的權限,并且建議為原始設備建立連接,并且每個chunk不得大于2G。 # divvy –m /dev/rhd02 我的配置如下: +-------------------+------------+--------+---+-------------+------------+ | Name | Type | New FS | # | First Block | Last Block | +-------------------+------------+--------+---+-------------+------------+ | dbspace00 | EAFS | no | 0 | 0| 1999999| | dbspace01 | NON FS | no | 1 | 2000000| 3999999| | dbspace02 | NON FS | no | 2 | 4000000| 5999999| | dbspace03 | NON FS | no | 3 | 6000000| 7999999| | dbspace04 | NON FS | no | 4 | 8000000| 9999999| | dbspace05 | NON FS | no | 5 | 10000000| 11999999| | | NON FS | no | 6 | 12000000| 12002696| | hd02 | WHOLE DISK | no | 7 | 0| 12002696| +-------------------+------------+--------+---+-------------+------------+ # divvy -m /dev/rhd03 我的配置如下: +-------------------+------------+--------+---+-------------+------------+ | Name | Type | New FS | # | First Block | Last Block | +-------------------+------------+--------+---+-------------+------------+ | dbspace10 | NON FS | no | 0 | 0| 1999999| | dbspace11 | NON FS | no | 1 | 2000000| 3999999| | dbspace12 | NON FS | no | 2 | 4000000| 5999999| | dbspace13 | NON FS | no | 3 | 6000000| 7999999| | dbspace14 | NON FS | no | 4 | 8000000| 9746099| | dbspace15 | NON FS | no | 5 | 10000000| 11695000| | | NOT USED | no | 6 | -| -| | d1037all | WHOLE DISK | no | 7 | 0| 11695823| +-------------------+------------+--------+---+-------------+------------+ 在/dev目錄下,自動產生了rdbspace00 – rdbspace05 和 rdbspace10 – rdbspace15 的12個區(qū)。 # chown Informix:Informix rdbspace* # chmod 660 rdbspace* (2)、建立連接 # mkdir /dbspaces # cd dbspaces $ ln –s chunk00 /dev/rdbspace00 等 我的連接如下: lrwxrwxrwx 1 root sys 15 Nov 14 09:44 chunk00 -> /dev/rdbspace00 lrwxrwxrwx 1 root sys 15 Nov 14 09:45 chunk01 -> /dev/rdbspace01 lrwxrwxrwx 1 root sys 15 Nov 14 09:45 chunk02 -> /dev/rdbspace02 lrwxrwxrwx 1 root sys 15 Nov 14 09:45 chunk03 -> /dev/rdbspace03 lrwxrwxrwx 1 root sys 15 Nov 14 09:45 chunk04 -> /dev/rdbspace04 lrwxrwxrwx 1 root sys 15 Nov 14 09:45 chunk10 -> /dev/rdbspace10 lrwxrwxrwx 1 root sys 15 Nov 14 09:46 chunk11 -> /dev/rdbspace11 lrwxrwxrwx 1 root sys 15 Nov 14 09:46 chunk12 -> /dev/rdbspace12 lrwxrwxrwx 1 root sys 15 Nov 14 09:46 chunk13 -> /dev/rdbspace13 lrwxrwxrwx 1 root sys 15 Nov 14 09:46 chunk14 -> /dev/rdbspace14 lrwxrwxrwx 1 root sys 15 Nov 14 09:43 rootdbs -> /dev/rdbspace05 lrwxrwxrwx 1 root sys 15 Nov 14 09:43 tempdbs -> /dev/rdbspace15
6、數據庫初始化 數據庫初始化主要包括初始化磁盤空間和初始化共享內存區(qū)。 第一步首先是磁盤空間的初始化: * 運行onmonitor---parameter--- Initialize [第一屏] INITIALIZATION:進行期望的改變并按ESC 鍵記錄這一改變。 按中斷鍵中止改變。按F2或CTRL-F獲取顯示字段級的幫助。 DISK PARAMETERS Page Size [ 2] Kbytes Mirror [N] Tape Dev. [/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 [ 2000000] Kbytes Primary Path [/dbspaces/rootdbs ] Root Offset [ 0] Kbytes Mirror Path [ ] Mirror Offset [ 0] Kbytes Phy. Log Size [ 100000] Kbytes Log. Log Size [ 20000] Kbytes Number of Logical Logs [ 20] Do you wish Dynamic Server to handle mirroring? (y/n) 注解: * 消息和磁帶參數設置: #系統(tǒng)歸檔磁帶設備: 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的關機緩沖區(qū) * ROOT初始化參數設置: #root dbspace的配置: Root Name [rootdbs ] root dbspace的名字 Root Size root dbspace的大小 Primary Path [/dbspaces/rootdbs ] 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 [100000] Kbytes 物理日志文件大小 #邏輯日志配置: Log. Log Size [20000] Kbytes 邏輯日志大小 Number of Logical Logs [ 20] 邏輯日志文件數量 消息和磁帶參數設置中歸檔磁帶設備:Tape Dev.temp、Log Tape Dev應根據具體磁帶機的配置情況進行設置,在此將該字段設為 [/dev/null ]; ROOT初始化參數設置中Primary Path 字段設為 [/dbspaces/rootdbs ],即指向根數據庫空間的路徑。一般在安裝UNIX時,即為其預留出單獨的某個分區(qū)(此處設分區(qū)名為rootdbs)。Root Size 即是分配給informix存放數據的空間大小,以Kbyte為單位。它的大小計算如下: A.以root登陸,使用命令: #divvy B.記錄下Name 為dbspace分區(qū)的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 [ 20] (邏輯日志文件數量) 修改完畢后按ESC鍵確認,如果參數配置有不合理之處,光標將停留在相應字段處。如果設置正確將進行下一步; 共享內存的初始化:
[第二屏] SHARED MEMORY:進行期望的改變并按ESC 鍵記錄這一改變。 按中斷鍵中止改變。按F2或CTRL-F獲取顯示字段級的幫助。 SHARED MEMORY PARAMETERS Server Number [ 8] Server Name [cld3300b_tcp ] Server Aliases [cld3300b_shm ] Dbspace Temp [tempdbs ] Deadlock Timeout [ 60] Secs Number of Page Cleaners [ 1] Forced Residency [N] Stack Size (K) [ 32] Non Res. SegSize (K) [ 32768] Optical Cache Size (K) [ 0] Dbspace Down Option [1] Preserve Log For Log Backup [N] Heterogeneous Commit [N] Transaction Timeout [ 300] Physical Log Buffer Size [ 2048] K Long TX HWM [ 50] Logical Log Buffer Size [ 2048] K Long TX HWM Exclusive [ 60] Max # of Logical Logs [ 20] Index Page Fill Factor [ 90] Max # of Locks [ 200000] Add SegSize (K) [ 8192] Max # of Buffers [ 200000] Total Memory (K) [ 0] Resident Shared Memory size [ 440686] Kbytes Page Size [ 2] Kbytes
Enter a unique value to be associated with this version of INFORMIX-OnLine. 注解: * 系統(tǒng)參數配置: Server Number [ 8] 每個服務器的唯一值 Server Name [cld3300b_tcp ] 數據庫服務器主名 Server Aliases [cld3300b_tcp ] 數據庫服務器別名 Dbspace Temp [cld3300b_tcp ] 臨時數據庫空間 Deadlock Timeout [ 60 ] 在分布環(huán)境下等待鎖的最長時間 Forced Residency [ N ] 強制駐留標志 Stack Size (K) [ 32 ] 堆棧大小 Non Res. SegSize (K) [32768] 非駐留段大小 Transaction Timeout [ 300] 交易超時間隔 Physical Log Buffer Size [2048] K 物理日志緩沖區(qū)大小 Logical Log Buffer Size [2048] K 邏輯日志緩沖區(qū)大小 Max # of Logical Logs [ 20] 邏輯日志最大數 Max # of Locks [200000] 鎖最大數 Max # of Buffers [200000] 緩沖區(qū)最大值 Index Page Fill Factor [ 90] 索引頁填充因子 Resident Shared Memory size [440686] Kb共享內存駐留區(qū)大小 Page Size [ 2] Kb頁大小 * 同樣的,鍵入ESC 確認正確后,進入下一步:
[第三屏] 性能:作所需要的修改然后敲 ESC 來記錄改動。 按中斷鍵中止改變。按F2或CTRL-F獲取顯示字段級的幫助。 PERFORMANCE TUNING PARAMETERS Multiprocessor Machine [N] LRU Max Dirty [ 20] Num Procs to Affinity [0] LRU Min Dirty [ 10] Proc num to start with [0] Checkpoint Interval [300] Num of Read Ahead Pages [ ] CPU VPs [ 1] Read Ahead Threshold [ ] AIO VPs [ 12] Single CPU VP [N] NETTYPE settings: Use OS Time [N] Protocol Threads Users VP-class Disable Priority Aging [Y] [tlitcp] [ 1] [ 20] [NET] Off-Line Recovery Threads [ 10] [ipcshm] [ 1] [ 20] [CPU] On-Line Recovery Threads [ 1] [ ] [ ] [ ] [ ] Num of LRUS queues [ 8] [ ] [ ] [ ] [ ] Are you running on a multiprocessor machine? 注解: * 系統(tǒng)參數配置: Multiprocessor Machine [N] 0 單處理器,1 多處理器 CPU VPs [ 1] 用戶CPU VPS 數量 NETTYPE settings: 為NETTYPE配置輪詢線索 Protocol Threads Users VP-class [ipcshm] [ 1] [ 20] [CPU] 說明:此處的參數在初次初始化Informix的時只需修改Protocol Threads Users VP-class,Protocol Threads VP-class 三個參數的設置見上表, usr下的數值應設置成你所購買的數據庫的用戶數。 * 鍵入ESC 確認正確后,進入下一步: 接下來幾屏都默認,然后初始化。 (7)、新建tempdbs、datadbs和add chunk 新建tempdbs: # onmonitor dbspaces > create [屏幕輸出] 按ESC鍵建立新的DBspace。 請按中斷鍵取消該選項并返回Dbspaces菜單 按F2或CTRL-F獲取顯示字段級的幫助。 CREATE DBSPACE Dbspace Name [ tempdbs ] Mirror [N ] Temp [Y ] PRIMARY CHUNK INFORMATION: Full Pathname [ /dbspaces/tempdbs ] Offset [ 0] Kbytes Size [ 2,000,000 ] Kbytes MIRROR CHUNK INFORMATION: Full Pathname [ ] Offset [ 0] Kbytes
新建datadbs: # onmonitor dbspaces > create [屏幕輸出] 按ESC鍵建立新的DBspace。 請按中斷鍵取消該選項并返回Dbspaces菜單 按F2或CTRL-F獲取顯示字段級的幫助。 CREATE DBSPACE Dbspace Name [ datadbs ] Mirror [ N] Temp [N] PRIMARY CHUNK INFORMATION: Full Pathname [ /dbspaces/chunk00 ] Offset [ 0] Kbytes Size [ 2,000,000] Kbytes MIRROR CHUNK INFORMATION: Full Pathname [ ] Offset [ 0] Kbytes 為datadbs加chunk: # onmonitor dbspaces > add_chunk [屏幕輸出] 按ESC鍵增加新的大塊。 按中斷鍵取消該選項并返回Dbspaces菜單 按F2或CTRL-F獲取顯示字段級的幫助。 ADD CHUNK TO DBSPACE Dbspace Name [datadbs ] Mirror [N] Temp [N] PRIMARY CHUNK INFORMATION: Full Pathname [ /dbspaces/chunk01 (添加你想要的chunk) ] Offset [ 0] Kbytes Size [ 2,000,000] Kbytes MIRROR CHUNK INFORMATION: Full Pathname [ ] Offset [ 0] Kbytes 然后執(zhí)行 onitit –iy 至此,數據庫安裝、配置和初始化基本完成。 --------------- INFORMIX ONLINE 7.31安裝完成 ----------- | | |