在 Linux 下的 Informix 数据库中,导出数据常用以下几种方式,按使用频率从高到低说明,并给出示例。
dbexport(整库或整库模式导出,最常用)dbexport database_name -o /opt/informix/export
dbexport testdb -o /home/informix/export
-o:指定输出目录testdb.sql(表结构)testdb.unl(数据文件)dbexport testdb -o /opt/export -ss # 保留片段信息
UNLOAD(导出单表数据,最灵活)UNLOAD TO '/opt/informix/export/t1.unl'
SELECT * FROM t1;
UNLOAD TO '/opt/informix/export/t1.unl'
DELIMITER '|'
SELECT * FROM t1;
dbaccess testdb -
然后输入 SQL。
echo "UNLOAD TO '/opt/informix/export/t1.unl' SELECT * FROM t1;" | dbaccess testdb -
dbaccess + SQL(导出查询结果)dbaccess testdb <<EOF
UNLOAD TO '/opt/informix/export/result.unl'
SELECT col1, col2 FROM t1 WHERE col3 = 'A';
EOF
onunload(二进制格式,不推荐用于跨平台)onunload -t /dev/rmt0 testdb
✅ 一般不用于数据交换
UNLOAD TO '/opt/informix/export/t1.csv'
DELIMITER ','
SELECT * FROM t1;
确保:
mkdir -p /opt/informix/export
chown informix:informix /opt/informix/export
DB_LOCALE、CLIENT_LOCALEUNLOADdbexport 中导出超大表| 需求 | 推荐方式 |
|---|---|
| 整库导出 | dbexport |
| 单表导出 | UNLOAD |
| 条件导出 | UNLOAD + SELECT |
| 快速备份 | onunload |
如果你愿意,可以告诉我:
我可以给你 最合适的导出命令组合 ✅