Informix快速导入海量数据

本文介绍了如何高效地向Informix数据库导入大量数据,包括迁移物理日志和逻辑日志,创建独立的存储空间和临时表空间,无日志模式下进行数据导入,以及使用load工具实现快速导入。通过这些策略,可以显著提升亿级数据导入的速度。
摘要由CSDN通过智能技术生成

需求:创建一个informix数据库和关系表,并且向表中导入一亿数据量,数据源是50GB左右的unl文件。

1.迁移物理日志和逻辑日志

Informix数据库默认的物理日志和逻辑日志均在rootdbs,通常配置较低。通常对大表的数据操作,会因为逻辑日志文件太小而导致long transaction的事务失败。如果磁盘空间充足,应将物理日志和逻辑日志迁移到独立的数据库空间,每个逻辑日志的最大大小是1GB。

#1.创建物理日志和逻辑日志chunk
cd $INFORMIXDIR/tmp
touch plogchk
touch llogchk
chmod 660 *chk
#2.新建物理日志和逻辑日志专用数据库空间plogdbs和llogdbs(依据onstat -g ckp提示建议的空间大小设定)
onspaces -c -d plogdbs -p $INFORMIXDIR/tmp/plogchk -o 0 -s 10240000
onspaces -c -d llogdbs -p $INFORMIXDIR/tmp/llogchk -o 0 -s 10240000
#3.迁移物理日志
onparams -p -s 10000000 -d plogdbs -y
#4.onstat -l查看逻辑存储空间个数,并创建6个逻辑存储空间
onparams -a -d llogdbs -s 1024000
onparams -a -d llogdbs -s 1024000
onparams -a -d llogdbs -s 1024000
onparams -a -d llogdbs -s 1024000
onparams -a -d llogdbs -s 1024000
onparams -a -d llogdbs -s 1024000
#5.不断运行以下命令,使当前逻辑日志切换到下一个,同时onstat -l查看,直到切换到非根空间的逻辑日志文件上为止
onmode -l
#6.确认所有旧的逻辑日志状态为UB,若存在UBL状态的逻辑日志,执行以下命令来强制执行检查点,确保状态切换到UB
onmode -c
#7.删除UB状态的旧逻辑日志
onparams -d -l <逻辑日志号>

2.为大表所在库创建独立的存储空间和临时表空间

临时数据库空间中禁止使用逻辑日志可减少在逻辑恢复期间要前滚的日志记录数,从而提高关键停机时间内的性能。并且还会减少存储空间备份的大小,因为数据库服务器不会备份临时数据库空间。<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值