CREATE TABLE TA (
ID NUMBER(20),
NAME VARCHAR2(20),
CONSTRAINT PK_TA PRIMARY KEY (ID)
);
INSERT INTO TA
SELECT ROWNUM ID, RANDSTR(10, RANDOM()) NAME
FROM TABLE(GENERATOR(1000)) A, TABLE(GENERATOR(100))B;
COMMIT;
SELECT COUNT(1) FROM TA; – 100000
–导出
obdumper -h 10.1.1.5 -P3306 -uUSER_A -c rco03 -t CT2 -p ‘XXXX’ -D USER_A --no-sys --csv --table ‘TA’ -f /data/user/BABA/dump_data/TA_CSV
All Dump Tasks Finished:
No.# | Type | Name | Count | Status
1 | TABLE | TA | 100000 | SUCCESS
–TA表数据部分清除,
保留数据,ID区间 10000-19999 ,55000 - 59999;
select count(1) from ta where id>=10000 and id<=19999; – 10000
select count(1) from ta where id>=55000 and id<=59999; – 5000
select count(1) from ta; – 100000 - 85000 = 15000
–删除了 85000 行,保留 15000
–导入
–第一次导入
obloader -h 10.1.1.5 -P3306 -uUSER_A -c rco03 -t CT2 -p ‘XXXX’ -D USER_A --no-sys --csv --table ‘TA’ -f /data/user/BABA/dump_data/TA_CSV
No.# | Type | Name | Count | Status
1 | TABLE | TA | 100000 -> 84998 | FAILURE
–检查数据
select count(1) from ta;
– 当前表数据 99998 ,99998 = 导入 84998 + 保留主键冲突数据 15000
– 有2条不冲突的数据没能导入,可能是数据导入段批次正好卡边了,先不管。
–删除之前预留的 15000 条数据。
delete from ta where id>=10000 and id<=19999;
delete from ta where id>=55000 and id<=59999;
commit;
select count(1) from ta; – 84998
–当前表中数据 84998 为第一次导入的数据。
当前目录下已经有 .load.ckpt 文件。
开始第二次导入,增加–retry 配置。
执行报错:
2025-04-15 11:31:52 [INFO] Start 16 record file reader threads success
2025-04-15 11:31:52 [ERROR] Load data file: “/data/user/data/USER_A/TABLE/TA.csv” failed. Reason: java.lang.IllegalArgumentException: Executors.call(Line:511) => RecordFileReader.run(Line:152).
2025-04-15 11:31:52 [ERROR] Fatal error occurred while loading data from “/data/user/data/USER_A/TABLE/TA.csv” into table “USER_A”.“TA”. Reason: java.lang.IllegalArgumentException: Executors.call(Line:511) => RecordFileReader.run(Line:152)
2025-04-15 11:31:52 [ERROR] Error: java.lang.IllegalArgumentException: Executors.call(Line:511) => RecordFileReader.run(Line:152)
2025-04-15 11:31:52 [INFO] ---------- Finished Tasks: 1 Running Tasks: 0 Progress: 100.00% ----------
2025-04-15 11:31:52 [INFO]
All Load Tasks Finished:
No.# | Type | Name | Count | Status
1 | TABLE | TA | 0 | FAILURE