在Linux上数据库通常采用MySql。MySql虽然快速,但是也有致命弱点:一是不支持事务处理,二是不支持SQL子查询。这些弱点(特别是不支持事务处理)使得MySql无法运用到关键业务中(比如银行业务数据库,涉及到上百亿资金的安全),除非后续版本能解决这两个问题。因此在涉及关键业务的地方我们可以选择大型数据库,如Oracle、Sybase、DB2和Informix等。
Informix与Oracle等数据库相比,速度并不占优,但可靠性非常好。本人所在单位多年来一直在涉及到客户存款的业务上使用SCO UNIX版的Informix Online,运行得非常稳定。现本人又把一些业务试移到Linux平台的Informix也获成功。Informix还有一个特点:如果您只想试装一下,用于学习目的话,安装起来非常简单,值得推荐。以下是最简单的一种安装方法:
1、在Linuxbyte.net的软件中心下载INFORMIX Dynamic Server 2000数据库;
2、运行linuxconf,增加一个informix组;增加informix用户,属组为informix,home目录为/usr/informix;
3、修改root用户和informix用户的.bash_profile,加上以下几行设置环境变量:
INFORMIXDIR=/usr/informix
INFORMIXSERVER=server1
ONCONFIG=onconfig.server1
export INFORMIXDIR INFORMIXSERVER ONCONFIG
PATH=$PATH:$INFORMIXDIR/bin
export PATH
解释:INFORMIXDIR即informix的安装目录,INFORMIXSERVER为数据库服务器名,可根据各人喜好自己设,onconfig.server1为即将配置文件名(后缀.server1也可随便设)
4、修改/etc/services文件,增加一行:
sqlexec1 6666/tcp
6666为数据库使用的端口号,只要不与其系统服务他冲突,也可在1000至65535之间任选一个,另外还要注意的是敲完这一行后一定要打回车换到下一行,然后再存盘;
5、重新用root注册,运行rpm命令安装Informix:
rpm -i --relocate /usr/informix
并按提示输入序列码和活动码,安装完毕
6、以informix用户注册,用以下命令生成一个空文件,并把其用户和属组改成informix:
>datadbs
chown informix datadbs
chgrp informix datadbs
datadbs文件将用来存放数据库的数据;
7、以informix用户的身份进入/usr/informix/etc,把onconfig.std复制成为onconfig.server1(与ONCONFIG变量相同),并用vi进行修改,主要修改的地方有:
ROOTNAME /usr/informix/datadba # 即datadbs文件的位置
...
ROOTSIZE 30000 #数据库的空间,以KB为单位,此处默认是30MB,可根据需要加大
...
PHYSFILE 2000 #物理日志大小
...
LOGSIZE 1500 #逻辑日志大小
....
TAPEDEV /usr/null
....
LTAPEDEV /dev/null
...
SERVERNUM 0
SERVERNAME server1 #服务器名字,与INFORMIXSERVER环境变量相同
其他部分不用修改,存盘退出。需要说明的是如果加大了ROOTSIZE,则PHYFILE和LOGSIZE也要相应加大。
8、把sqlhosts.std复制成sqlhosts,用vi修改,增加一行:
server1 onipcshm localhost sqlexec1
其中的server1、sqlexec1要与上面的相对应,localhosts要与/etc/hosts文件的内容相对应;
9、以root注册,修改/dev/console文件属性:
chown informix /etc/console
chgrp informix /etc/console
10、初始化数据库空间,完成安装:
oninit -iy
命令运行结束后可看到/usr/informix/datadbs文件的大小已经由0变成30MB了,试运行如下onstat命令:
onstat -
如果出现:
Informix Dynamic Server 2000 Version 9.21.UC2 -- On-line --Up 16:30:21 --18888 Kbytes
则数据库启动成功。
11、一些使用技巧:
0)启动数据库服务器,用不带参数的oninit命令;
1)数据库管理可用dbaccess命令,可完成建库、建表、SQL查询和插入等基本操作;
2)停止数据库,可用 onmode -ky命令,执行完后再用onstat -命令检查状态;
3)增加数据库空间,可按上面步骤6生成空新的文件,用onmonitor命令,选DBSPACES菜单,择Add_Chunk功能;
4)如何启动和关闭Linux时自动启动和关闭Informix:分别在/etc/rd.d和/etc/rc0.d相关地方增加设置环境变量的行,以及oninit和onmode -ky命令
5)如何备份数据库:用dbexport命令:
dbexport <数据库名> -o /tmp
然后把/tmp下的exp子目录备份即可;
6)如何恢复用dbexport卸出的数据:用dbimport命令:
先把原备份的数据恢复到/tmp原exp目录,再用dbimport命令:
dbimport <数据库名> -i /tmp
12、VB、Delphi及ASP等Windows平台的程序如何通过ODBC访问Linux上的Informix数据库:
1)下载并安装Informix_cli软件(可在搜索引擎上搜索),序列码、活动码和上面用过的完全通用;
2)运行Informix_cli所带的SetNet32软件,设置Informix数据库的相应信息,安装完成;
以后可在控制面板建Informix的ODBC数据源,即可通过ODBC调用Informix。
以上讲述的只是一种简单的安装方法,因篇幅关系,这里不涉及诸如裸设备、物理日志、逻辑日志和临时日志等复杂概念和设置,对于简单应用已经足够。
另外要补充一点的是,按以上方法安装并不需要调整核心参数就能安装成功。不过大型数据库安装前一般都要设核心参数,Informix也不例外。因此如果要用于大型应用系统,最好把SHMMAX加大(也就是修改/usr/src/linux/include/asm/shmparam.h,再重新编译核心)。
文章转载自网管之家:http://www.bitscn.com/pdb/otherdb/200606/27754.html