在 Linux 环境下使用 IBM Informix 导数据,常见方式有以下几种,按使用频率从高到低说明:
dbexport / dbimport(整库或整库结构+数据)dbexport dbname -o /tmp/expdir
dbname:数据库名/tmp/expdir:导出目录(会自动生成 dbname.exp)导出内容:
.sql).unl)dbimport dbname -i /tmp/expdir
适合:迁移数据库、备份整库
unload / load(单表或批量数据)unload to '/tmp/tab1.unl'
select * from tab1;
load from '/tmp/tab1.unl'
insert into tab1;
适合:表级数据交换
onunload / onload(二进制方式,快但不通用)onunload -t /dev/st0 dbname
onload -t /dev/st0 dbname
适合:同版本 Informix 快速迁移
isql + OUTPUT(简单文本)output to '/tmp/out.txt' without headings
select * from tab1;
informix + csv 导出(常用)unload to '/tmp/tab1.csv'
delimiter ','
select col1, col2 from tab1;
export DB_LOCALE=zh_CN.utf8
export CLIENT_LOCALE=zh_CN.utf8
DBA 或对应表权限dbexport 更稳定-ss 保留存储结构| 场景 | 推荐方式 |
|---|---|
| 整库迁移 | dbexport / dbimport |
| 单表交换 | unload / load |
| 同平台高速迁移 | onunload / onload |
| 给外部系统 | unload csv |
如果你能说明:
我可以给你更精确的命令示例。