在 Linux 下使用 Informix 导入表,常见方式有以下几种,按使用频率从高到低说明。
dbimport(整库/整 schema 导入,最常用)适用于:
dbexport 导出的数据库dbexport mydb -o /opt/ifmx/dump
会生成:
/opt/ifmx/dump/mydb.exp/
dbimport mydb_new -i /opt/ifmx/dump
常用参数:
dbimport mydb_new \
-i /opt/ifmx/dump \
-d datadbs \
-l buffered
load(表级导入,文本数据)适用于:
.unl 或分隔符文本文件例如 t1.unl:
1|abc
2|def
dbaccess mydb -
load from '/opt/ifmx/t1.unl'
insert into t1;
或写 SQL 文件:
load from '/opt/ifmx/t1.unl'
insert into t1;
执行:
dbaccess mydb load.sql
External Table(外部表,高性能)适用于:
CREATE EXTERNAL TABLE ext_t1
LIKE t1
USING (
DATAFILES ("DISK:/opt/ifmx/t1.unl"),
FORMAT "DELIMITED",
DELIMITER "|"
);
INSERT INTO t1 SELECT * FROM ext_t1;
onload(物理级恢复,少用)适用于:
onload -t /opt/ifmx/t1.tape mydb
# 导出
dbexport shop -o /backup
# 导入
dbimport shop_new -i /backup
如果你能告诉我:
.unl / CSV / dbexport)我可以给你精确的命令模板。