Businesses’ data volume has grown exponentially over the past few years. This could be data related to how people interact with their product or service, what people think of their offerings, how well the performance of their marketing efforts, etc.

Oracle and MySQL are two of the most popular Relational Database Management Systems (RDBMS). A large number of businesses widely use both Oracle and MySQL. These databases share several key similarities as well as differences. Many users migrate Oracle to MySQL as per their use cases.

This article will help you understand two easy methods to help you set up Oracle to MySQL Migration step-by-step, enabling you to leverage the advantages of both databases. You will also get a good overview of setting up an ETL Pipeline for Oracle to MySQL data migration.

Prerequisites for Oracle to MySQL Migration

You will require the following to set up Oracle to MySQL migration properly:

  • Up and running setup of Windows Server 2008 with Oracle 11.2.0 or later.
  • MySQL database up and running.
  • Basic understanding of Databases and SQL Commands for use.

What are the Methods to Set up Oracle to MySQL Migration?

You can set up Oracle to MySQL Migration by implementing one of the following methods:

Method 1: Manual Oracle to MySQL Migration 

  • Login to MySQL with your credentials.
  • Launch the option for the ODBC Connector data source.
  • Set up the Oracle ODBC data source to your MySQL database.
Oracle to MySQL - ODBC | Hevo Data
Oracle to MySQL – ODBC
  • Fill in the required details to connect the Oracle Server name, user, password, and database. Provide a suitable ODBC connection name. Click on the Test button to test the connection. 
  • Configure listener.ora file from Oracle. Navigate to the Oracle installation directory, and you’ll find the listener.ora file under $ORACLE_HOME/NETWORK/ADMIN directory and add the following to it:
  • Update the location of ORACLE_HOME if the path mentioned is not your installation path.
  • The above configuration tells Oracle to use the dg4odbc program.
  • If you face any issue, type dg4odbc in the command line to check if that program exists or not. If you get an error as “Program not recognized”, add $ORACLE_HOME/bin to your path variable and relaunch the command line to check. 
  • Configure inittest.ora. The file will be created when you create a new SID in the listener.ora file. The naming convention of the file is init + SID name. Configure data source / SID for dg4odbc. Add the following to your inittest.ora file:
  • The above line specifies which ODBC connection to use. In this case, in step 1, you have created an ODBC connection to form the connection. 
  • Configure tnsnames.ora file. The file location is $ORACLE_HOME/NETWORK/ADMIN/TNSNAMES.ora. Add the following lines to the file:
  • In the above configuration, the HS=OK entry is very important, and you must ensure that you have used the same SID created on the listener.ora file.
  • Restart the Oracle Service and the TNS Listener Service.
  • Once Oracle is up and running, create a database Link in Oracle. Log in to the Oracle database with DBA rights (e.g. as SYS) and create the database link using the following syntax:
create public database link link2mysqltest connect to "oracle" identified by "oracle" using 'TSTLINK';
  • Test the database link and click on Finish.
  • Login to MySQL and run the below query which uses the test link created in the above steps.
select * from "test_table"@link2mysqltest

Limitations of Manual Oracle to MySQL Migration

The limitations of manually setting up Oracle to MySQL Migration are as follows:

  • Even though the user only has to make a few configuration changes to set up Oracle to MySQL Migration, it is difficult to get this migration right without deep Oracle administration knowledge. This might lead to Oracle throwing errors because of multiple configuration parameters that vary across different versions.
  • Even after getting the Oracle to MySQL Migration right, the connection, in reality, has many constraints and rough edges concerning the SQL queries that can be executed. You will encounter problems with functions and data types that are not supported at source and target databases.

You have seen the Oracle to MySQL migration challenges. Let’s get into the next one.

Method 2: Using Hevo Data to Set up Oracle to MySQL Migration

Hevo Logo
Hevo Logo

Hevo Data helps you directly connect Oracle to MySQL and various other sources, Data Warehouses, or a destination of your choice in a completely hassle-free & automated manner.

Hevo is fully managed and completely automated to help you migrate data from Oracle to MySQL and transform it into an analysis-ready form without having to write a single line of code.

Its fault-tolerant architecture ensures that the data is handled securely and consistently with zero data loss.

Sign up for a 14-Day FREE Trial Now!

Hevo takes care of all your data preprocessing needs required to set up Oracle to MySQL Migration and lets you focus on key business activities and draw a much more powerful insight on how to generate more leads, retain customers, and take your business to new heights of profitability.

It provides a consistent & reliable solution to manage data in real-time and always have analysis-ready data in your desired destination. 

When I saw Hevo, I was amazed by the smoothness with which it worked so many different sources with zero data loss.

– Swati Singhi, Lead Engineer, Curefit

The following steps can be implemented to set up Oracle to MySQL Migration using Hevo:

  • Configure Source: Connect Hevo Data with Oracle by providing a unique name for your Pipeline and information about your Oracle database, such as its name, IP Address, Port Number, Username, Password, etc.
Oracle to MySQL - Configure Oracle as a Source | Hevo Data
Configure Oracle Source
  • Integrate Data: Complete Oracle to MySQL Migration by providing your MySQL database credentials, such as your authorized Username and Password, along with information about your Host IP Address and Port Number value. You will also need to provide a name for your database and a unique name for this destination.
Oracle to MySQL - Configure MySQL as a Destination | Hevo Data
Configure MySQL Destination
All of the capabilities, None of the firefighting

Using manual scripts and custom code to move data into the warehouse is cumbersome. Frequent breakages, pipeline errors, and lack of data flow monitoring make scaling such a system a nightmare. Hevo’s reliable data pipeline platform enables you to set up zero-code and zero-maintenance data pipelines that just work.

Reliability at Scale – With Hevo, you get a world-class fault-tolerant architecture that scales with zero data loss and low latency. 

Monitoring and Observability – Monitor pipeline health with intuitive dashboards that reveal every stat of the pipeline and data flow. Bring real-time visibility into your ELT with Alerts and Activity Logs. 

Stay in Total Control – When automation isn’t enough, Hevo offers flexibility – data ingestion modes, ingestion, and load frequency, JSON parsing, destination workbench, custom schema management, and much more – for you to have total control.    

Auto-Schema Management – Correcting improper schema after the data is loaded into your warehouse is challenging. Hevo automatically maps source schema with the destination warehouse so you don’t face the pain of schema errors.

24×7 Customer Support – With Hevo, you get more than just a platform; you get a partner for your pipelines. Discover peace with round-the-clock “Live Chat” within the platform. Moreover, you get 24×7 support even during the 14-day full-featured free trial.

Transparent Pricing – Say goodbye to complex and hidden pricing models. Hevo’s Transparent Pricing brings complete visibility to your ELT spending. Choose a plan based on your business needs. Stay in control with spend alerts and configurable credit limits for unforeseen spikes in the data flow. 

Get started for Free with Hevo!


This article provided a step-by-step guide on how to set up Oracle to MySQL Migration manually or using Hevo.

However, there are certain limitations associated with the manual method. If those limitations are not a concern to your operations, then using it is an option, but if it is then you should consider using the automated Data Pipeline platform, Hevo.

Scale your Data Integration effortlessly with Hevo’s Fault-Tolerant No Code Data Pipeline

1000+ data teams rely on Hevo’s Data Pipeline Platform to integrate data from over 150+ sources in a matter of minutes.

Billions of data events from sources as varied as SaaS apps, Databases, File Storage, and Streaming sources can be replicated in near real-time with Hevo’s fault-tolerant architecture.

Hevo puts complete control in the hands of data teams with intuitive dashboards for pipeline monitoring, auto-schema management, and custom ingestion/loading schedules. 

The transparent pricing and 24×7 support make Hevo the highest-rated data pipeline software on many review sites.

Take our 14-day free trial to experience a better way to manage data pipelines.

Get started for Free with Hevo!

What are your thoughts on moving data from Oracle to MySQL? Let us know in the comments.

No-code Data Pipeline For Oracle and MySQL