Linux环境上安装informix搭建库

1.建文件系统
fdisk后
partprobe /dev/cciss/c0d0
pvcreate /dev/cciss/c0d0p3
vgcreate -s 128m vg01 /dev/cciss/c0d0p3
lvcreate -L 5120M -n lvinformix vg01
mkfs.ext3 /dev/vg01/lvinformix
mkdir -p /home/db/informix
echo "/dev/vg01/lvinformix /home/db/informix ext3 defaults 1 2">>/etc/fstab
mount /home/db/informix

2.建系统用户
groupadd -g 300 informix
useradd -u 300 -g 300 -d /home/db/informix informix
passwd informix
chown -R informix:informix /home/db/informix
chmod -R 755 /home/db/informix

3.建数据裸设备
(vgcreate vgdbs)
lvcreate -L 2048M -n lvrootdbs vgdbs
lvcreate -L 2048M -n lvlogdbs vgdbs
lvcreate -L 2048M -n lvtmpdbs vgdbs
lvcreate -L 2048M -n lvphydbs vgdbs
lvcreate -L 10240M -n lvdatadbs01 vgdbs
创建lv与裸设备的映射
echo "/dev/raw/raw10 /dev/vgdbs/lvrootdbs" >>/etc/sysconfig/rawdevices
echo "/dev/raw/raw11 /dev/vgdbs/lvlogdbs" >>/etc/sysconfig/rawdevices
echo "/dev/raw/raw12 /dev/vgdbs/lvtmpdbs" >>/etc/sysconfig/rawdevices
echo "/dev/raw/raw13 /dev/vgdbs/lvphydbs" >>/etc/sysconfig/rawdevices
echo "/dev/raw/raw14 /dev/vgdbs/lvdatadbs01" >>/etc/sysconfig/rawdevices
红帽4的系统下:

vi /etc/udev/permissions.d/50-udev.permissions

找到raw/:root:disk:0660,将其改为raw/:informix:informix:0660,修改完成后执行如下命令使映射生效

/etc/rc.d/init.d/rawdevices restart

红帽5的系统下:

vi /etc/udev/rules.d/60-raw.rules

ACTION=="add", KERNEL=="raw*", OWNER=="informix", GROUP=="informix", MODE=="0660"
After configuring, please restart udev:

start_udev

service rawdevices restart


检查裸设备是否已创建:
raw -qa
修改裸设备的属主/组以及权限:
echo "chown informix:informix /dev/raw/" >>/etc/rc.d/rc.local
echo "chmod 660 /dev/raw/
" >>/etc/rc.d/rc.local
/etc/rc.d/rc.local

4.安装informix软件
(如需要安装isql一定要先装isql再装ids
否则会报错Initializing Dictionary Cache and SPL Routine Cache...Cannot find message file.
Check INFORMIXDIR and DBLANG.FAILED)
顺序为ISQL、 IDS、CSDK
将IDS.10.00.XXX.tar文件上传到/home/db/informix目录
root用户登录
cd /home/db/informix
./ids_install
下一步,制定路径,安装完。
PS:若安装报错:
The wizard cannot continue because of the following error: could not load wizard
specified in /wizard.inf (104)
解决方法:
which java 找到本机java环境所在地 如/usr/bin/java
需要指定以java运行环境,添加以下参数即可

./ids_install -javahome /usr/bin/java

5.修改informix用户环境变量bash_profile
INFORMIXDIR=/home/db/informix
PATH=$PATH:$INFORMIXDIR/bin:.
INFORMIXSERVER=hbsmsdb_tcp
ONCONFIG=onconfig.hbsmsdb
DBDATE=Y4MD
DBCENTURY=C
INFORMIXTERM=terminfo
KAIOON=1
export KAIOON
export INFORMIXSERVER ONCONFIG INFORMIXTERM
export INFORMIXDIR PATH DBDATE DACENTURY
LD_LIBRARY_PATH=$INFORMIXDIR/lib:$INFORMIXDIR/lib/esql:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH

==================
修改services服务
vi /etc/services
加入下面行
?sqlexe 60999/tcp # informix
sqlexec 61000/tcp # informix
============================
sqlhosts配置文件
vi /home/db/informix/etc/sqlhost
============================
hbsmsdb(名字自定义) onipcshm(内存方式) HBAPQ500(主机名) on_shm
hbsmsdb_tcp(名字自定义) onsoctcp(tcp方式) HBAPQ500(主机名) sqlexec
或hbsmsdb_tcp(名字自定义) onsoctcp(tcp方式) ip地址 端口号
(sqlexec和端口都是在services文件里定义对应的)
==========================================================================
onconfig配置文件里
ROOTOFFSET 50(最好设个偏移量)
/home/db/informix/hbsmsdbs/rootdbs
物理日志和逻辑日志的DBspace出始化时是必须在rootdbs里的,所以不要设置太大,会把ROOT挤爆。
==========================================================================

System Configuration

SERVERNUM 0 # Unique id corresponding to a OnLine instance
DBSERVERNAME hbsmsdb # Name of default database server
DBSERVERALIASES hbsmsdb_tcp(连数据库走网络方式) # List of alternate dbservernames
NETTYPE soctcp,2,250,NET # Configure poll thread(s) for nettype
NETTYPE ipcshm,2,250,CPU # Configure poll thread(s) for nettype


soctcp,2,250,NET (其中2表2个cpu 250表示最大的进程数)
ipcshm,2,250,CPU (cpu这种方式理论效率高)

多处理器模式
MULTIPROCESSOR 1 # 0 for single-processor, 1 for multi-processor
NUMCPUVPS 2 2个 # Number of user (cpu) vps

Shared Memory Parameters

LOCKS 5000000(常驻内存)# Maximum number of locks
NUMAIOVPS 16 (偶数) # Number of IO vps
PHYSBUFF 64 # Physical log buffer size (Kbytes)
LOGBUFF 64 # Logical log buffer size (Kbytes)
CLEANERS 16 # Number of buffer cleaner processes
SHMBASE 0x44000000L # Shared memory base address
SHMVIRTSIZE 8192 # initial virtual shared memory segment size
SHMADD 8192 # Size of new shared memory segments (Kbytes)
...............................
BUFFERPOOL size=2K,buffers=50000,lrus=8,lru_min_dirty=50.000000,lru_max_dirty=60.000000
相当于2K*50000 = 100M
============================================================================

创建保存指向裸设备的链接文件的目录
mkdir hbsmsdbs
cd ****dbs
ln -s /dev/raw/raw10 rootdbs
ln -s /dev/raw/raw11 logdbs
ln -s /dev/raw/raw12 tmpdbs
ln -s /dev/raw/raw13 phydbs
ln -s /dev/raw/raw14 datadbs01

创建数据库
oninit -ivy
onstat -

都有偏移量 是50(K)
datadbs是表空间的概念 datadbs01是数据文件的概念
onspaces -c -d phydbs -p /home/db/informix/hbsmsdbs/phydbs -o 50 -s 2048000
onspaces -c -d logdbs -p /home/db/informix/hbsmsdbs/logdbs -o 50 -s 2048000
onspaces -c -d datadbs -p /home/db/informix/hbsmsdbs/datadbs01 -o 50 -s 10240000
onspaces -c -d tmpdbs -t -p /home/db/informix/hbsmsdbs/tmpdbs -o 50 -s 2048000
使用onparams改变物理日志位置和大小
$onmode -s (执行graceful shutdown)
$onparams -p -s 2047000 -d phydbs -y(略小于2048000)
使用onparams逻辑日志
$onparams -a -d logdbs -s 100000(执行20次,建20个逻辑日志)

$onmode -m (将系统从quiescent模式变为on-line模式)
释放日志空间
$onmode -l (由于初始化后有6个log建在rootdbs 得运行6次)
(从当前日志切换到下一个日志,onstat -l可以看出效果)
onmode -c (onmode -c 强制校验检查点,onmode -l后,有可能上一个日志中包含检查点,onmode -c可以强制校验,把检查点转到当前日志)
=======此时onstat -l输出(省略上下文)==========
53cc9b30 6 U-B---- 6 1:614663 102400 1 0.00(这含以上均为初始化后rootdbs里的逻辑日志)
54ae2e60 7 U---C-L 7 3:53 50000 2 0.00(这含以下为新划的100M一个的逻辑日志)
================================================
ontape -s -L 0 //备份

下面可以删前面6个rootdbs里的逻辑日志
onparams -d -l 1 -y
onparams -d -l 2 -y
onparams -d -l 3 -y
onparams -d -l 4 -y
onparams -d -l 5 -y
onparams -d -l 6 -y
$ontape -s -L 0
onstat -l 可以看效果
最后记得改onconfig,加上tmpdbs 再启停一次库,完成。

若要在线加10g数据空间 建裸设备和数据链接
datadbs是表空间的概念 datadbs02是数据文件的事
raw /dev/raw/raw15 /dev/vgdbs/lvdatadbs02
onspaces -a datadbs -p /home/db/informix/hbsmsdbs/datadbs02 -o 50 -s 10240000

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,386评论 6 479
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,939评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,851评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,953评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,971评论 5 369
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,784评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,126评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,765评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,148评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,744评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,858评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,479评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,080评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,053评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,278评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,245评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,590评论 2 343

推荐阅读更多精彩内容