informix用户身份执行(su - informix),确保该用户对备份目录有读写权限。df -h命令查看)。ontape或onbar工具,需检查onconfig配置文件(通常位于$INFORMIXDIR/etc)中的关键参数:
TAPEDEV:备份设备路径(如磁带机或本地文件路径,如/dev/st0或/backup/informix);TAPEBLK:块大小(建议设置为16或32,提升备份效率);TAPESIZE:磁带大小(若使用文件路径,可忽略或设置为备份文件的最大预期大小)。ontape是Informix原生工具,支持完整备份(0级)、增量备份(1级)、差异备份(2级),并可实现逻辑日志备份。
ontape -s -L 0 -t /backup/informix/full_backup
参数说明:-s(静默模式,减少输出信息);-L 0(指定0级备份);-t(备份目标目录)。ontape -s -L 1 -t /backup/informix/incremental_backup
ontape -s -L 2 -t /backup/informix/differential_backup
ontape -s -L 0 -t /backup/informix/log_backup
onbar支持并行备份(提升速度)、时间点恢复(PITR),但配置较复杂(需设置BAR_ACT_LOG、BAR_DEBUG_LOG等参数)。
onbar -b full -d /backup/informix/onbar_full
参数说明:-b full(指定完整备份);-d(备份目录)。onmode -ky;onbar -r -L 0 /backup/informix/onbar_full(-L 0表示从0级备份恢复);onmode -z。dbexport将数据库导出为ASCII文本文件,适合数据迁移或小规模备份(不支持增量备份)。
dbexport -d target_database -c -ss
参数说明:-d(指定数据库名);-c(创建导出目录);-ss(静默模式)。dbimport -d target_database -c -i /backup/informix/target_database.exp
参数说明:-i(指定导出目录)。Onunload以二进制格式卸出数据,备份效率高,但仅能恢复到相同版本的Informix数据库。
unload to /backup/informix/table_unload.unl select * from table_name
dbexport结合Onunload。通过cron定时任务自动执行备份脚本,例如每天凌晨2点执行完整备份:
/home/informix/auto_backup.sh:#!/bin/bash
BACKUP_DIR="/backup/informix"
DATE=$(date +%Y%m%d)
mkdir -p "$BACKUP_DIR"
/opt/IBM/informix/bin/ontape -s -L 0 -t "$BACKUP_DIR/full_$DATE"
find "$BACKUP_DIR" -mtime +30 -type f -name 'full_*' -exec rm -rf {} \; # 删除30天前的备份
cron任务:crontab -e
插入以下内容:0 2 * * * /home/informix/auto_backup.sh
onmode -ky(强制关闭数据库)。ls -lh查看文件大小,或使用ontape -t测试备份文件)。onmode -ky # 停止数据库
ontape -r -L 0 /backup/informix/full_backup # 恢复0级备份
onmode -z # 启动数据库
onmode -ky
onbar -r -L 0 /backup/informix/onbar_full
onmode -z
onmode -ky
dbimport -d target_database -c -i /backup/informix/target_database.exp
onmode -z
$INFORMIXDIR/dblogs),确保onbar能实现时间点恢复。informix用户访问,防止未授权修改。