OBLOADER & OBDUMPER V4.0.0 released in December 2022 allows you to import and export TYPE object definitions as well as data files (compressed by default) in column-oriented storage formats of ORC and Parquet. This version also weakens its dependency on sys tenant privileges, optimizes data export performance (for tables with primary keys or with non-null unique keys), and upgrades versions of components that the underlying layer depends on. The JDBC driver is upgraded to V2.2.11, and the partition calculator component is upgraded to 1.4.0-RELEASE. In addition, some feature defects in earlier versions are fixed.
Version information
Current version: V4.0.0
Previous version: V3.3.2
Version release date: December 12, 2022
Supported OceanBase Database versions
OBLOADER & OBDUMPER V4.0.0 is applicable to OceanBase Database versions in the following table.
| OceanBase Database mode | Supported version |
|---|---|
| Oracle mode | V2.0.x, V2.1.x, V2.2.20, V2.2.30, V2.2.50, V2.2.70, V2.2.71, V2.2.72, V2.2.76, V3.1.x, V3.2.x, and V4.0.0 |
| MySQL mode | V1.4.70, V1.4.72, V1.4.75, V1.4.78, V1.4.79, V2.2.30, V2.2.50, V2.2.70, V2.2.71, V2.2.72, V2.2.76, V3.1.x, V3.2.x, and V4.0.0 |
Feature updates
OBLOADER:
- The
--orcand--paroptions are added, allowing you to import data files in ORC and Parquet formats to OceanBase Database.
- The
OBDUMPER:
- The
--orcand--paroptions are added, allowing you to export table data into data files in ORC and Parquet formats.
- The
The
--typeoption is added, allowing you to export TYPE object definitions.- The dependency on sys tenant privileges is weakened. Features available when the sys tenant password is specified are different from those available when the password is not specified. The differences are as follows:

- The dependency on sys tenant privileges is weakened. Features available when the sys tenant password is specified are different from those available when the password is not specified. The differences are as follows:
Fixed issues
- OBDUMPER reports a syntax error for the export of partition indexes from OceanBase Database V2.2.30 in Oracle mode.
- When the
--cutoption is specified on the command line of OBDUMPER, the exported data containsNULL. Then, OBLOADER takesNULLas theNULLstring during the import. - OBDUMPER cannot export public synonyms from OceanBase Database in Oracle mode.
- OBDUMPER cannot export partition information of table groups in OceanBase Database V2.2.77 and earlier versions.
- Line breaks are missing in an INSERT SQL statement when the
--sqloption is specified on the OBDUMPER command line for data export. - The column comments exported from OceanBase Database in Oracle mode have a syntax error when the sys tenant password is not specified on the OBDUMPER command line.
- OBDUMPER reports a NullPointerException (NPE) during a consistent export, which is possibly because that the PreparedStatement (PS) is closed in advance.
- OBDUMPER cannot export the baseline data after the last major compaction during a consistent export.
- OBLOADER cannot import TYPE object definitions exported by OBDUMPER from OceanBase Database V4.0.0.0.
- OBDUMPER reports an error for the export of partition indexes from OceanBase Database V4.0.0.0.
- OBDUMPER incorrectly identifies the database version when querying partition indexes in OceanBase Database V4.0.0.0.
- OBDUMPER does not intercept the export even when the
--ddl,--csv, and other data format options are not specified on the command line. - The
--mixoption must be used together with the--tableoption on the OBLOADER command line, which impacts the ease-of-use of OBLOADER . - When the
--mixoption is specified on the OBLOADER command line, if the file to be imported contains table group definitions, an error is reported. - When OBLOADER imports data to a multi-replica cluster, if some nodes crash down, all data cannot be imported.
- An array may be out of range in the data imported when a control file is used on OBLOADER for field mapping.
- A specified path is not supported when OBLOADER imports database object definitions.
- OBLOADER fails to import a table schema that contains generated columns to OceanBase Database V4.0.0.0.
Known issues
- The exported database object definitions may contain the name of the database to which the object belongs.
- If you do not specify the sys tenant password on the command line, OBDUMPER cannot export table group definitions from OceanBase Database of versions earlier than V2.2.70.
- If you do not specify the sys tenant password on the command line, OBDUMPER cannot export index definitions from OceanBase Database of versions earlier than V2.2.50 in Oracle mode.
- If you do not specify the sys tenant password on the command line, OBDUMPER cannot export partition information of unique indexes from OceanBase Database of versions earlier than V2.2.70 in Oracle mode.
- If you do not specify the sys tenant password on the command line, OBDUMPER cannot export unique index definitions of partitioned tables from OceanBase Database V2.2.70 and later versions in Oracle mode.
- OBDUMPER cannot export sequence definitions from OceanBase Database in MySQL mode.
- OBDUMPER cannot export PL object definitions from OceanBase Database of versions earlier than V2.2.30 in MySQL mode.
- On Windows OS, the import feature has defects when the
--cutoption is specified on the command line to import files.
Usage notes
In a CUT file, each data record is stored in an entire line. When you specify the
--cutoption on the OBDUMPER command line, if the exported data contains a single-character field separator, OBDUMPER escapes special characters in the data, such as separators, carriage returns, and line breaks. For example, if the data isabc|defand the separator is|, the exported data isabc\|def.When you specify the
--cutoption on the OBLOADER command line, do not use the--trail-delimiteroption if no field separator or separator string exists at the end of the data line in the file. Otherwise, a serious error occurs on OBLOADER.When you specify the
--logical-databaseoption on the command line, the definition of a random physical database shard is exported and the shard cannot be directly imported to the database. You need to manually convert the exported physical shard to a logical one before you import it to the database for business use.To preprocess data to be imported or exported by using a control file, you need to use the
--tableand--ctl-pathoptions. The--tableoption must be set to the table name in the same letter case as that specified in--ctl-path. Otherwise, OBLOADER & OBDUMPER fails to identify the control file.When you specify the
--partitionoption on the command line to export data in a partition, you need to specify the name of the subpartition for a composite partitioned table. OBDUMPER cannot export data in a partition of a composite partitioned table. If the specified partition name does not exist, OBDUMPER returns an error.When you specify the
--add-extra-messageoption on the command line to export table definitions, OBDUMPER exports the name of the table group to which each table belongs. This option depends on privileges of the sys tenant. If OBDUMPER does not have privileges of the sys tenant, do not specify this option.Before you use OBDUMPER & OBLOADER to export data from or import data to OceanBase Database V3.2.4.0 and later, set the system parameter
open_cursorsto a larger value. Otherwise, an error may occur. After the data is imported or exported, reset the system parameter to the initial value, for example,ALTER SYSTEM SET open_cursors = 65535;.If the schema of a table has been changed in OceanBase Database V4.0.0.0 or later, you cannot use OBDUMPER to export the baseline data obtained after the lasted major compaction (or consistent snapshot data). You can manually initiate a major compaction and then re-export the most recent baseline data.