【 使用环境 】生产环境 or 测试环境
【 OB or 其他组件 】
【 使用版本 】
【问题描述】清晰明确描述问题
【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):
【SOP系列 22 】——故障诊断第一步(自助诊断和诊断信息收集)
【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!
oceanbase版本为4.2.2
/data/backup/ob-loader-dumper-4.2.4-RELEASE/bin/obloader -h 10.100.12.11 -P 2883 -u root -t sys -c zhejiang -p -D hello --csv --table ‘*’ -f /tmp/20241125old/data/hello --thread 16 --rpc-port=2885 --direct --parallel=16
Enter value for --password (Password to use when connecting to server):
Exception in thread “main” picocli.CommandLine$UnmatchedArgumentException: Unknown options: ‘–rpc-port=2885’, ‘–direct’
1 个赞
论坛小助手
#3
根据文档库中的信息,obloader
工具在使用时并没有 --rpc-port
和 --direct
选项。这可能是导致您遇到“Unknown options”错误的原因。
解决方案:
-
移除未知选项:
请尝试移除 --rpc-port=2885
和 --direct
选项,重新运行 obloader
命令。例如:
/data/backup/ob-loader-dumper-4.2.4-RELEASE/bin/obloader -h 10.100.12.11 -P 2883 -u root -t sys -c zhejiang -p -D hello --csv --table '*' -f /tmp/20241125old/data/hello --thread 16 --parallel=16
-
检查 obloader
文档:
确认 obloader
的官方文档或帮助信息中是否有这些选项。您可以运行 obloader --help
查看所有可用选项。
-
使用 LOAD DATA
语句:
如果您需要使用旁路导入功能,可以考虑使用 LOAD DATA
语句,并通过 Hint 指定是否走旁路导入。例如:
LOAD DATA INFILE '/path/to/your/file.csv' INTO TABLE your_table DIRECT;
具体步骤:
-
移除未知选项:
/data/backup/ob-loader-dumper-4.2.4-RELEASE/bin/obloader -h 10.100.12.11 -P 2883 -u root -t sys -c zhejiang -p -D hello --csv --table '*' -f /tmp/20241125old/data/hello --thread 16 --parallel=16
-
检查 obloader
帮助信息:
/data/backup/ob-loader-dumper-4.2.4-RELEASE/bin/obloader --help
-
使用 LOAD DATA
语句:
LOAD DATA INFILE '/path/to/your/file.csv' INTO TABLE your_table DIRECT;
希望以上信息能帮助您解决问题。如果仍有疑问,请提供更多详细信息以便进一步诊断。
具体信息可参考以下文档:
- 使用 LOAD DATA 语句旁路导入数据
- OceanBase 数据库社区版 V4.2.1
- ob_esi_rpc_port
- OceanBase 数据库社区版 V4.0.0
- 使用 OceanBase 导数工具从 OceanBase 集群 Oracle 租户迁移数据到 MySQL 租户
- 使用 OceanBase 导数工具在 OceanBase 集群 MySQL 租户间迁移数据
- 5000 ~ 5999
- obcdc 开发说明
- ob_error
去掉 --rpc-port=2885 --direct 是可以的 ,但就不是旁路导入了,旁入导入可以加快导入速度
论坛小助手
#5
根据文档库中的信息,旁路导入确实可以提高数据导入的效率。为了实现旁路导入,您需要使用特定的命令和配置。以下是详细的步骤和示例:
旁路导入的配置和命令
-
配置 session.config.json
文件:
您需要在 {ob-loader-dumper}/conf
目录下的 session.config.json
文件中配置旁路导入参数。示例如下:
{
"direct_path_load": {
"rpc_connect_timeout": "15000",
"rpc_execute_timeout": "20000",
"runtime_retry_times": "5",
"runtime_retry_intervals": "50",
"task_timeout": "2592000000000",
"heartbeat_timeout": "60000000"
}
}
参数说明:
-
rpc_connect_timeout
:RPC 连接超时时间,单位为毫秒。
-
rpc_execute_timeout
:RPC 执行超时时间,单位为毫秒。
-
runtime_retry_times
:运行时最大重试次数。如果因为某些原因操作失败,将会根据该参数进行重试。
-
runtime_retry_intervals
:重试间隔时间。在重试操作前等待的时间长度,单位为毫秒。
-
task_timeout
:配置操作的超时时间。如果在配置的时限内未完成操作,则被视为超时。单位为微秒,默认值为 0,表示无超时限制。
-
heartbeat_timeout
:设置心跳超时时间,用于检测导入操作的活跃状态。单位为微秒,默认值为 0,表示不启用心跳检测。
-
使用 obloader
命令:
在配置文件中设置了旁路导入参数后,您可以使用 obloader
命令进行旁路导入。示例如下:
/data/backup/ob-loader-dumper-4.2.4-RELEASE/bin/obloader -h 10.100.12.11 -P 2883 -u root -t sys -c zhejiang -p -D hello --csv --table '*' -f /tmp/20241125old/data/hello --thread 16 --parallel=16 --direct-path
注意:
-
--direct-path
选项用于启用旁路导入。
-
--thread
和 --parallel
选项分别表示客户端到服务端的连接池和 OBServer 可以调用的工作线程数,建议保持一致。
注意事项
-
增量旁路导入:
- 增量旁路导入的数据会触发转储,对于数据量较小且能在分钟内完成导入的情况,不建议使用增量旁路导入。
- 执行增量旁路导入的分区数不能超过 8000。
- 有索引(不包括主键)的表不支持增量旁路导入。
- 有外键的表不支持增量旁路导入。
- 原表以及导入数据中有 LOB 类型,如果 LOB 类型的数据大小超过表的
OB_INROW_THRESHOLD
大小,则不支持增量旁路导入。
-
全量旁路导入:
- 全量旁路导入适用于大表首次导入、10 GB~TB 级别的数据迁移以及 CPU 和内存都不是特别充裕的场景。
- 旁路导入期间会加表锁,表无法被写入其他数据,整个过程中表是只读的。
- 当导入的数据量小于 Memtable 时,旁路导入没有优势。
示例
假设您已经配置了 session.config.json
文件,以下是完整的命令示例:
/data/backup/ob-loader-dumper-4.2.4-RELEASE/bin/obloader -h 10.100.12.11 -P 2883 -u root -t sys -c zhejiang -p -D hello --csv --table '*' -f /tmp/20241125old/data/hello --thread 16 --parallel=16 --direct-path
希望以上信息能帮助您成功进行旁路导入。如果仍有问题,请提供更多详细信息以便进一步诊断。
具体信息可参考以下文档:
- ETL 加速
- 使用 OBLOADER 旁路导入数据
- 增量旁路导入
- 全量旁路导入
- obcdc 支持增量旁路导入
- 旁路导入概述
(小助手的答复已结束,如未能解决您的问题,请继续提问并等待其他同学的回复,谢谢!)
旭辉
#6
参考下这个帖子,obproxy是什么版本?可能版本不对
旁路导入添加--direct --parallel=8 报错,不添加就没问题 - #4,来自 阿强p0g2t1_gaMTIwMjU5NTAzNC4xNzE0OTc1MTY1_ga_T35KTM57DZ*MTczMjc1NjY5MC4zNDcuMS4xNzMyNzY0NTUzLjYwLjAuMA…
你好,命令格式有误,改成
/data/backup/ob-loader-dumper-4.2.4-RELEASE/bin/obloader -h 10.100.12.11 -P 2883 -u root -t sys -c zhejiang -p -D hello --csv --table ‘*’ -f /tmp/20241125old/data/hello --thread 16 --rpc-port 2885 --direct --parallel 16