Transfer Oracle schemas, data, and code to MariaDB using export, conversion, and import tools.
MariaDB is open-source, license-friendly, and cloud-ready, making it a budget-savvy replacement for Oracle while keeping high availability and performance.
1) Export Oracle metadata & data. 2) Convert Oracle objects to MariaDB-compatible SQL. 3) Create target schema in MariaDB. 4) Load data. 5) Refactor application code. 6) Validate & optimize.
Use Data Pump: expdp user/password DIRECTORY=expdir SCHEMAS=ECOMMERCE DUMPFILE=ecom.dmp LOGFILE=ecom.log
. This captures tables, indexes, constraints, and data.
Run ora2mariadb
or MySQL Workbench Migration. They transform data types (NUMBER→DECIMAL, VARCHAR2→VARCHAR) and translate sequences to AUTO_INCREMENT
.
Copy the generated .sql
file to the MariaDB host, then execute mysql -u root -p ecommerce < ecom_converted.sql
. Use SET FOREIGN_KEY_CHECKS=0
during bulk load for speed.
See the dedicated Syntax section below for expdp
, ora2mariadb
, and mysql
import commands.
The Example Query section shows exporting Customers
, converting, and loading into MariaDB in a single script.
Enable binlog format = ROW in MariaDB for future CDC, migrate non-nullable columns first, and validate row counts with CHECKSUM TABLE
.
See the Common Mistake section for details on understated data types and unconverted PL/SQL.
Yes. Map each sequence to an AUTO_INCREMENT
column or create a separate table that simulates sequence behavior.
No. Rewrite PL/SQL packages as stored procedures or move logic to the application layer.
With parallel Data Pump (PARALLEL=4) and fast-load, expect 30-60 min export, 10-15 min convert, and 30-45 min import, subject to I/O.
Map Oracle identity to MariaDB AUTO_INCREMENT
and drop the original sequence-trigger pair.
Yes. Use Oracle GoldenGate or AWS DMS for continuous replication while you cut over reads and writes.
Only those conflicting with MariaDB (e.g., YEAR
). The converter tool flags them for you.