MySQL HeatWave User Guide
MySQL HeatWave on OCI does not support LOAD
DATA
with ALGORITHM=BULK
.
MySQL HeatWave on AWS does support LOAD
DATA
with ALGORITHM=BULK
, but
does not support the INFILE
and
URL
clauses.
For versions earlier than MySQL 9.4.0, tables must have a primary key, and the primary key must not have a prefix index. For MySQL 9.4.0 and later, primary keys are not required.
LOAD DATA
with
ALGORITHM=BULK
has the following
limitations:
It locks the target table exclusively and does not allow other operations on the table.
It does not support automatic rounding or truncation of the input data. It fails if the input data requires rounding or truncation in order to be loaded.
It does not support temporary tables.
It is atomic but not transactional. It commits any
transaction that is already running. On failure the
LOAD DATA
statement is
completely rolled back.
It cannot execute when the target table is explicitly
locked by a LOCK TABLES
statement.
The target table for LOAD
DATA
with ALGORITHM=BULK
has
the following limitations:
It must be empty. The state of the table should be as
though it has been freshly created. If the table has
instantly added/dropped column, call TRUNCATE before
calling LOAD DATA
with
ALGORITHM=BULK
.
It must not be partitioned.
It must not contain secondary indexes. As of MySQL
9.2.0, LOAD DATA
with
ALGORITHM=BULK
does support
secondary indexes.
It must be in a file_per_tablespace, and must not be in a shared tablespace.
It must have the default row format,
ROW_FORMAT=DYNAMIC
. Use
ALTER TABLE
to make any
changes to the table after LOAD
DATA
with ALGORITHM=BULK
.
It must not contain virtual or stored generated columns.
It must not contain foreign keys.
It must not contain CHECK
constraints.
It must not contain triggers.
It is not replicated to other nodes.
It must not use a secondary engine. Set the secondary
engine after LOAD DATA
with ALGORITHM=BULK
. See:
Section 4.2.6.2, “Define the Secondary Engine”.