How to connect SSH enabled MySql Database using Azure Data Factory

Image

Overview

There is ssh enabled On-premise MySql(MariaDB) db, we are trying to copy data to SQL server using Azure Data Factory.

  1. Mysql as source database(MariaDb-172.x.x.x) hosted in linux(101.x.x.x).
  2. We have a Virtual machine with public Ip hosted in Azure.
  3. Azure sql database instance as destination.
  4. Bitvise ssh client for port forwarding. It forwards the MySQL Ip to the localhost.
  5. Self-hosted Azure Integration runtime to copy on-premise data.

Bitvise tunneling

  1. Install Bitvise to the VM, Connect MySQL server to Bitvise. In login enter Ip, ports, and authentication of the source database.
  2. After authentication is completed, open new SFTP window, download the text file from remote server. In the text file, we can find the Host, port, and credentials.
  3. Now, we need to forward IP to the local. In C2S(client to server) section enable port forwardings. Get the destination host and port from the text file and forward it to the local(127.0.0.1).

Integration runtime

Create self-hosted integration runtime in a data factory and install the IR node at the virtual network. It performs data integration securely in a private network environment needs to install self-hosted IR on premises.

Data movement

  1. Use the copy data tool for data movement activities.
  2. Create linked services to connect source and destination. In the linked service to connect MySQL database and enter server name as localhost and enter the credentials.
  3. Create datasets and then finally pipeline.

Written by:

Urvi Verma

Data Architect

LinkedIn

Related Post

Leave a Reply