Skip to content

Latest commit

 

History

History
56 lines (47 loc) · 3.37 KB

File metadata and controls

56 lines (47 loc) · 3.37 KB

What The Hack - Intro To OSS DB Migration to Azure OSS DB

Introduction

This intro level hackathon will help you get hands-on experience migrating databases from on-premises PostgreSQL, Oracle and/or MySQL to Azure DB for PostgreSQL and/or Azure DB for MySQL.

Learning Objectives

In this hack you will solve a common challenge for companies migrating to the cloud: migrating databases such as PostgreSQL, Oracle and MySQL to Azure. The application using the database is a sample e-commerce application written in Java. It will be configured to use PostgreSQL, MySQL and/or Oracle.

The participants will learn how to:

  1. Perform a pre-migration assessment of the databases looking at size, database engine type, database version, etc.
  2. Use offline tools to copy the databases to Azure OSS databases
  3. Use the Azure Database Migration Service to perform an online migration (if applicable)
  4. Do cutover and validation to ensure the application is working properly with the new configuration
  5. Use a private endpoint for Azure OSS databases instead of a public IP address for the database
  6. Configure a read replica for the Azure OSS databases

Challenges

  • Challenge 0: Pre-requisites - Setup Environment and Prerequisites!
    • Prepare your environment to run the sample application
  • Challenge 1: Discovery and assessment
    • Discover and assess the application's PostgreSQL/MySQL/Oracle databases
  • Challenge 2: Offline migration
    • Dump the "on-prem" databases (or use a tool like ora2pg), create databases for Azure DB for PostgreSQL/MySQL and restore them
  • Challenge 3: Offline Cutover and Validation
    • Reconfigure the application to use the appropriate connection string and validate that the application is working
  • Challenge 4: Online Migration
    • Create new databases in Azure DB for PostgreSQL/MySQL and use the Azure Database Migration Service to replicate the data from the on-prem databases
  • Challenge 5: Online Cutover and Validation
    • Reconfigure the application to use the appropriate connection string for Azure DB for PostgreSQL/MySQL
  • Challenge 6: Private Endpoints
    • Reconfigure the application to use configure Azure DB for PostgreSQL/MySQL with a private endpoint so it can be used with a private IP address
  • Challenge 7: Replication
    • Add an additional replica to the Azure DB for PostgreSQL/MySQL

Prerequisites

Repository Contents

  • ../Coach
    • Lecture presentation with short presentations to introduce each challenge
    • Example solutions and coach tips to the challenges (If you're a student, don't cheat yourself out of an education!)
  • ../Student/Resources
    • Pizzeria application environment setup

Contributors

  • Pete Rodriguez
  • Israel Ekpo
  • Mike Shelton
  • Daniel Kondrasevich
  • Sumit Sengupta
  • Peter Laudati