首批通过分布式安全可靠测评,为关键业务系统打造
命令行参数介绍
更新时间:2026-04-10 12:01:00
使用 oblogminer 时,可通过配置不同的命令行参数实现 oblogminer 的不同功能。oblogminer 支持的命令行参数具体如下表,详细的使用操作可参见 使用示例。
| 参数 | 详细参数名 | 是否必须 | 参数类型 | 默认值 | 含义 |
|---|---|---|---|---|---|
| -m | --mode | 否 | 字符串 | analysis | 默认为分析模式,当前仅支持分析模式。 |
| -c | --cluster-addr | 是 | 字符串 | NULL | 集群地址,格式为 ip:port,多个地址则使用 | 分隔,如 ip1:mysql_port1|ip2:mysql_port2|ip3:mysql_port3。集群地址可通过查询 DBA_OB_ACCESS_POINT 视图获取,具体命令为 SELECT CONCAT(SVR_IP, ':', SQL_PORT) FROM DBA_OB_ACCESS_POINT;。 |
| -u | --user-name | 是 | 字符串 | NULL | 租户用户名,格式为 user@tenant。 |
| -p | --password | 是 | 字符串 | NULL | 租户用户密码,必须指定且不允许为空密码。 |
| -a | --archive-dest | 是 | 字符串 | NULL | 归档日志路径,不可与 -c、-u、-p 参数同时指定。配置 -c、-u、-p 参数时,信息会从在线日志中读取,配置 -a 参数时数据会从归档日志中读取。 |
| -l | --table-list | 否 | 字符串 | *.*.* | 指定分析的库表名,格式与 obcdc 中的 tb_white_list 相同,即租户名.库名.表名(例如 tenant.db1.tb1|tenant.db2.*),其中租户名必须与 -u/--user-name 中指定的租户名或归档日志所属租户相同。 |
| -C | --column-cond | 否 | 字符串 | NULL | 支持以 json 来精确指定分析的列过滤条件,详细介绍可参见下文 说明。 |
| -s | --start-time | 是 | 字符串 | NULL | 指定 oblogminer 分析的日志的开始时间。需配置为 datatime 格式或微秒时间戳格式,如 2024-01-09 16:23:00 或 1706164790844000。开始时间需满足 obcdc 的要求,过早的开始时间会导致 oblogminer 启动失败。具体限制可参见 obcdc 常见问题。 |
| -e | --end-time | 否 | 字符串 | 默认为当前时间 | 指定 oblogminer 分析的日志的结束时间。需配置为 datatime 格式或微秒时间戳格式,如 2024-01-09 16:23:00 或 1706164790844000。 |
| -O | --operations | 否 | 字符串 | insert|delete|update | 指定输出的 DML 操作类型,取值范围为 {'insert', 'delete','update'} 的组合,通过 | 来连接。默认全部输出。 |
| -o | --output | 是 | 字符串 | NULL | 数据文件输出的目录。支持本地目录或 OSS,本地目录需为绝对路径,格式如:file:///output/ 或 oss://$PATH/$FILENAME/?host=$HOST&access_id=$ACCESS_ID&access_key=$ACCESSKEY。详细介绍可参见下文 说明。 |
| -L | --log_level | 否 | 字符串 | ALL.*:INFO;PALF.*:WARN;SHARE.SCHEMA:WARN | oblogminer 运行时日志级别,OceanBase 数据库支持的日志级别可参见 日志级别。 |
| -z | --timezone | 否 | 字符串 | +8:00 | 指定时区。 |
| -f | --record_format | 否 | 字符串 | csv | 记录存储格式,默认为 CSV 格式。可配置为:
|
| -h | --help | 否 | 无 | 不涉及 | 输出 help 信息。 |
| -v | --verbose | 否 | 无 | 不涉及 | 控制是否在命令行中输出详细信息,会展示更多命令行日志。 |
说明
参数类型为字符串类型的参数配置时需加引号。
-C/--column-cond需配置为 json 格式,不指定则不做任何过滤。配置过滤条件后,不匹配的表数据不会输出,但是对应表的 DDL 仍旧会输出,不会被过滤。配置示例如下:[ { "database_name":"db1", "table_name":"tbl1", "column_cond":[ { "col1":"val1", "col2":"val2" }, { "col3":null } ] } ]上述配置示例中字段的含义如下,您需同时配置
database_name、table_name和column_cond。database_name用于指定分析的库名。table_name用于指定分析的表名。column_cond用于指定database_name.table_name对应的列级别条件。
在配置
-C/--column-cond时还需注意如下几点:-C/--column-cond配置时需为数组格式,即使用英文方括号([])包裹。每张表的过滤条件需为 json 对象。所有的 key 和 value 都是 string 类型数据,即需要加引号。对于列值为 NULL 的,value 需配置为
null。column_cond字段需为数组格式,其中每个对象(object)为一组“且条件”,对象之间为“或条件”。以上述配置示例为例,表示指定输出对db1.tbl1中col1列的值为val1且col2列的值为val2,或者col3列的值为null的记录的修改。在命令行中指定该参数时,需要对参数中的引号进行转义,即
"需替换为\"。
-o/--output用于配置数据文件输出的目录,支持配置为本地目录或 OSS,需确保目录为空。在本地文件系统下可指定路径以
file://开头,且路径为绝对路径,如file:///data/1/logminer_output/。配置为 OSS 时,路径以
oss://开头,格式如oss://$PATH/$FILENAME/?host=$HOST&access_id=$ACCESS_ID&access_key=$ACCESSKEY。$PATH指定存储桶中的文件路径,表示文件所在的目录。$FILENAME指定文件的名称,表示要访问的具体文件。$HOST指定 OSS 服务的主机名或 CDN 加速的域名,即要访问的 OSS 服务地址。$ACCESS_ID指定访问 OSS 服务所需的 Access Key ID,用于身份验证。$ACCESSKEY指定访问 OSS 服务所需的 Access Key Secret,用于身份验证。