OBLOADER & OBDUMPER V4.2.8.2 released in March 2024 fixes some known issues.
Version information
Current version: V4.2.8.2
Previous version: V4.2.8.1
Release date: March 11, 2024
Upgrade considerations
Notice
When you upgrade OBLOADER & OBDUMPER from a version earlier than V4.2.8 to V4.2.8.2, take note of the following upgrade considerations.
OBLOADER & OBDUMPER V4.2.8 and later allow you to specify the value of
-u/--userin the three-segment format of <user>@<tenant>#<cluster>. For backward compatibility, you can still use the-t/--tenantand-c/--clusteroptions.When you use the
--storage-urioption in a data import/export scenario involving Alibaba Cloud Object Storage Service (OSS) or Hadoop Distributed File System (HDFS), the-f/--file-pathoption is no longer a must. OBLOADER & OBDUMPER will automatically create a temporary directory/tmpin its root directory for storing log and checkpoint files.Notice
This modification applies only in a debugging environment. In a production environment, we recommend that you use the
-for--log-pathoption to specify the log storage directory.The behavior for parsing POS files is changed. In this version, the parser processes a whole line. In other words, in addition to the byte length defined in the control file, the parser will further read a line break for each line. You may need to modify the control file to adapt to this change. You can run the following command to calculate the number of bytes in the first line of the
example.datfile:expr $(head -n 1 example.dat | wc -c) - 1.Schema export performance optimization is supported for Oracle compatible mode of OceanBase Database only in the following scenarios:
The
--no-sysoption is specified to export data from OceanBase Database of a version earlier than V4.0.0 in Oracle compatible mode.The
--compact-schemaoption is specified to export data from OceanBase Database V4.0.0 or later in Oracle compatible mode.
Bug fixes
Fixed the issue where the table schema is exported when you specify to export the schema of a non-table object.
Fixed the issue where the data of all partitions of the table may be exported when you use the
--partitionoption to export the data of a specific partition.Fixed the issue where the batch processing script for Windows contains syntax errors.
Fixed the issue where a NullPointerException (NPE) is thrown if the
-t/--tenantoption is not specified when you export data from ApsaraDB for OceanBase.
Known issues
The exported database object definitions may contain the name of the database to which a specified object belongs.
OBDUMPER cannot export PL object definitions from OceanBase Database of a version earlier than V2.2.30 in MySQL compatible mode.
If you do not specify the password of the sys tenant on the command line, OBDUMPER cannot export table group definitions from OceanBase Database of a version earlier than V2.2.70.
If you do not specify the password of the sys tenant on the command line, OBDUMPER cannot export index definitions from OceanBase Database of a version earlier than V2.2.50 in Oracle compatible mode.
If you do not specify the password of the sys tenant on the command line, OBDUMPER cannot export partition information of unique indexes from OceanBase Database of a version earlier than V2.2.70 in Oracle compatible mode.
If you do not specify the password of the sys tenant on the command line, OBDUMPER cannot export definitions of unique indexes on partitioned tables from OceanBase Database V2.2.70 or later in Oracle compatible mode.
When you use OBLOADER to import data, an error occurs if the specified file format, such as
--sqlor--csv, does not match the actual file format.In MySQL compatible mode of OceanBase Database, after you enable case sensitivity for object names such as table names and view names, objects are still imported or exported in a case-insensitive manner.
The high-availability mode "sequential" of OceanBase Connector/J is unavailable for now. You can use the "loadbalance" mode instead.
If you specify the
--remove-newlineoption to remove line breaks, unexpected escape characters are generated. Therefore, we recommend that you do not use this option.If you use direct load in a multi-table restore scenario, the performance may be undesirable.
Considerations
In a CUT file, each data record is stored in a separate line. When you specify the
--cutoption on the command line of OBDUMPER, if the exported data contains a single-character field delimiter, OBDUMPER escapes special characters in the data, such as delimiters, carriage returns, and line breaks. For example, if the data isabc|defand the delimiter is|, the exported data isabc\|def.When you specify the
--cutoption on the command line of OBLOADER, do not use the--trail-delimiteroption if no field delimiter or delimiter string exists at the end of each data line in the file. Otherwise, the data cannot be correctly imported to the database.If 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 must manually convert the exported physical shard to a logical one before you import it into the database for business use.When you specify the
--partitionoption on the command line to export data in a partition, you must 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 the privileges of the sys tenant. If OBDUMPER does not have the privileges of the sys tenant, do not specify this option.When you use OBLOADER & OBDUMPER to import data to or export data from OceanBase Database V3.2.4 or later, set the
open_cursorssystem parameter to a large value. Otherwise, an error may occur during the import or export. After the data is imported or exported, reset the system parameter to the initial value, such asALTER SYSTEM SET open_cursors = 65535;.In OceanBase Database V4.0.0 or later, if the schema of a table has been changed, you cannot use OBDUMPER to export the baseline data, namely the consistent snapshot data, obtained after the last major compaction. You can manually initiate a major compaction and then export the most recent baseline data.
When you use OBDUMPER of a version earlier than V4.2.0 to export data from OceanBase Database in MySQL compatible mode, OceanBase Connector/J converts the zero values of date and time columns in the database to
NULL. If a column has aNOT NULLconstraint, an error is reported during the export. OBDUMPER V4.2.0 can export zero values of date and time columns, but cannot identify whether the original data isNULLor zero values during the export and forcibly converts the data to zero values by default. In addition, exported zero values of the DATETIME and TIMESTAMP data types may be distorted into approximate non-zero values. If thesql_modevariable in the database is specified with the NO_ZERO_DATE or NO_ZERO_IN_DATE constraint, an error is reported when zero values are imported. Take note of this consideration on zero values when you export data of the DATE, DATETIME, TIME, YEAR, or TIMESTAMP type from OceanBase Database in MySQL compatible mode.Feature differences in schema export in Oracle compatible and MySQL compatible modes
Compatibility mode Password of the sys tenant provided Password of the sys tenant not provided MySQL compatible Tables, views, table groups, stored procedures, and functions are supported. The export behavior is basically the same as that when the password of the sys tenant is provided, except for the following known issues: - Table group definitions cannot be exported for OceanBase Database of a version earlier than V2.2.70.
- Partition information of unique indexes cannot be exported for OceanBase Database of a version earlier than V2.2.70.
- Index definitions cannot be exported for OceanBase Database V2.2.30 or earlier in Oracle compatible mode.
- Definitions of unique indexes on partitioned tables cannot be exported for OceanBase Database of a version ranging from V2.2.70 (inclusive) to V4.0.0 in Oracle compatible mode.
Oracle compatible Tables, views, triggers, synonyms, sequences, stored procedures, functions, packages, table groups, and types are supported.