ob数据库Oracle租户模式下 obloader 使用非|字段分割符加载数据报错,顺带咨询一下如何使用十六进制不可见字符作为字段分隔符

[oswatch@dd1 20240731]$ /software/ob-loader-dumper-4.2.8-RELEASE/bin/obloader -h [xxx.xxx.xxx.xxx] -P 3306 -u [user] -p [pass] -D OPSDATA --no-sys --cut --table ‘T_DIM_BUS_CHNL_STM_TMN_EQP_INF_DD’ --column-separator ‘#’ --file-encoding ‘gbk’ --truncate-table -f /oswatch/oswatch/data_load_sh/DATAFILE/20240731/dw_dim_bus_chnl_stm_tmn_eqp_inf_dd_i_20240731.dat --ctl-path ‘/oswatch/oswatch/data_load_sh/ctl/t_dim_bus_chnl_stm_tmn_eqp_inf_dd.ctl’ --log-path ‘/oswatch/oswatch/data_load_sh/log/20240731/dw_dim_bus_chnl_stm_tmn_eqp_inf_dd_i.t_dim_bus_chnl_stm_tmn_eqp_inf_dd/’
2024-09-05 15:33:28 [INFO] Parsed args:
[–cut] true
[–ctl-path] /oswatch/oswatch/data_load_sh/ctl/t_dim_bus_chnl_stm_tmn_eqp_inf_dd.ctl
[–file-path] /oswatch/oswatch/data_load_sh/DATAFILE/20240731/dw_dim_bus_chnl_stm_tmn_eqp_inf_dd_i_20240731.dat
[–file-encoding] gbk
[–no-sys] true
[–log-path] /oswatch/oswatch/data_load_sh/log/20240731/dw_dim_bus_chnl_stm_tmn_eqp_inf_dd_i.t_dim_bus_chnl_stm_tmn_eqp_inf_dd/
[–column-separator] #
[–host] [xxx.xxx.xxx.xxx]
[–port] 3306
[–user] [user]
[–password] ******
[–database] OPSDATA
[–sys-user] root
[–table] [T_DIM_BUS_CHNL_STM_TMN_EQP_INF_DD]
[–truncate-table] true

2024-09-05 15:33:28 [INFO] Connecting to OPSDATA
2024-09-05 15:33:28 [INFO] Server Mode: OBORACLE-3.2.3.3
2024-09-05 15:33:28 [INFO] Parse ctrl definition: “/oswatch/oswatch/data_load_sh/ctl/t_dim_bus_chnl_stm_tmn_eqp_inf_dd.ctl” success
2024-09-05 15:33:28 [INFO] Querying table metadata, this might take a while…
2024-09-05 15:33:28 [INFO] Filtering out empty tables…
2024-09-05 15:33:28 [INFO] Found 1 empty tables before executing… Elapsed: 14.07 ms
2024-09-05 15:33:28 [INFO] Split 1 data files to 1 subfiles by 64.0 MB success. Elapsed: 14.66 ms
2024-09-05 15:33:28 [ERROR] Invalid table entry: TableEntryKey [ cluster: :****, tenant: *******, database: *******, table: T_DIM_BUS_CHNL_STM_TMN_EQP_INF_DD ], TableId: -9223372036854775808, PartitionNum: 1, ReplicaNum: -9223372036854775808, SchemaVersion: null, PartitionInfo: null
2024-09-05 15:33:28 [INFO] Query table entry and primary key for table: “T_DIM_BUS_CHNL_STM_TMN_EQP_INF_DD” finished. Remain: 0
2024-09-05 15:33:29 [WARN] Calculate leader of table “T_DIM_BUS_CHNL_STM_TMN_EQP_INF_DD” failed, treat it as non-partition table. Remain: 0
2024-09-05 15:33:29 [INFO] Waiting to refresh observer load status…
2024-09-05 15:33:29 [INFO] Refresh observer load status success. Table: “T_DIM_BUS_CHNL_STM_TMN_EQP_INF_DD”. Remain: 0
2024-09-05 15:33:29 [INFO] Create 256 slots for ring buffer finished. [0.0.0.0]
2024-09-05 15:33:29 [INFO] Start 16 database writer threads finished. [0.0.0.0]
2024-09-05 15:33:29 [INFO] Start 16 record file reader threads success
2024-09-05 15:33:29 [ERROR] Clean data failed. Record: [0#11]. Reason: Index: 1, Size: 1.
2024-09-05 15:33:29 [ERROR] Clean data failed. Record: [0#11]. Reason: Index: 1, Size: 1.
2024-09-05 15:33:29 [ERROR] Clean data failed. Record: [0#11]. Reason: Index: 1, Size: 1.
2024-09-05 15:33:29 [INFO] File: “/oswatch/oswatch/data_load_sh/DATAFILE/20240731/dw_dim_bus_chnl_stm_tmn_eqp_inf_dd_i_20240731.dat” has been parsed finished
2024-09-05 15:33:29 [WARN] Failed to load 3 records from “/oswatch/oswatch/data_load_sh/DATAFILE/20240731/dw_dim_bus_chnl_stm_tmn_eqp_inf_dd_i_20240731.dat” into table “OPSDATA”.“T_DIM_BUS_CHNL_STM_TMN_EQP_INF_DD”. Check “ob-loader-dumper.bad” and “ob-loader-dumper.discard” for details
2024-09-05 15:33:30 [ERROR] Error: Failed to load 3 records from “/oswatch/oswatch/data_load_sh/DATAFILE/20240731/dw_dim_bus_chnl_stm_tmn_eqp_inf_dd_i_20240731.dat” into table “OPSDATA”.“T_DIM_BUS_CHNL_STM_TMN_EQP_INF_DD”. Check “ob-loader-dumper.bad” and “ob-loader-dumper.discard” for details
2024-09-05 15:33:30 [INFO] ---------- Finished Tasks: 1 Running Tasks: 0 Progress: 100.00% ----------
2024-09-05 15:33:30 [INFO]

All Load Tasks Finished:


    No.#        |        Type        |              Name               |            Count             |       Status

     1          |       TABLE        |T_DIM_BUS_CHNL_STM_TMN_EQP_INF_DD|            3 -> 0            |      FAILURE

Total Count: 0 End Time: 2024-09-05 15:33:30

2024-09-05 15:33:30 [INFO] Load record finished. Total Elapsed: 1.348 s
2024-09-05 15:33:30 [ERROR] System exit 1
[oswatch@dd1 20240731]$


ctl文件

开源社区这里 没有oboracle模式 这个属于商业版 你可以提工单 版本不一样 我们没有办法确定问题

社区版没有oracle模式,建议你去咨询企业版的工单同学或者产品经理

而且比较奇怪的是 --column-separator ‘#’ 这个不做调整,把数据文件中的字段分割符号调整为|,测试数据文件却能正确加载进去

环境是客户的,我们自己没有,怎么解决这个问题呢?

这边也不太了解oracle模式的功能,还是建议去咨询企业工单同学 :joy: