Πώς κάνουμε migrate μία SQL Server βάση δεδομένων στο Azure με τη χρήση Data Migration Assistant
- Πώς συλλέγουμε to actual execution plan από τα queries με χρήση Extended Event και πως διαβάζουμε τα δεδομένα του - 2 Δεκέμβριος 2024
- Πώς βρίσκουμε τι δικαιώματα έχει ένας χρήστης σε βάση δεδομένων της Oracle - 1 Νοέμβριος 2024
- Πώς ενεργοποιούμε το Unified Auditing σε Oracle Database - 7 Οκτώβριος 2024
Πολλές φορές θα χρειαστεί να μεταφέρουμε βάσεις δεδομένων σε νεότερη έκδοση ή να τις πάμε στο Azure. Σε μια τέτοια μεταφορά υπάρχει πιθανότητα κάποια components να μην είναι συμβατά και να χρειάζονται διορθώσεις πριν ξεκινήσουμε το migration.
Το εργαλείο που μας παρέχει τη βοήθεια για να βρούμε προβλήματα που μπορεί να επηρεάσουν το migration και προσφέρει οδηγίες στο πως θα τα λύσουμε είναι το Data Migration Assistant. Επίσης έχει τη δυνατότητα να αναλάβει να πραγματοποιήσει το offline migration.
Μπορούμε να κατεβάσουμε το Data Migration Assistant από εδώ.
Σε περίπτωση που κάνουμε migrate σε Azure θα πρέπει να έχουμε πρόσβαση στην Azure υποδομή είτε με ένα Public Endpoint (Internet), είτε με ExpressRoute ή αλλιώς με VPN.
*Αν το μέγεθος και ο αριθμός των βάσεων είναι μεγάλος συνίστατε η χρήση του Azure Database Migration Service που μπορεί να πραγματοποιήσει και online migrations. Αναλυτικές πληροφορίες και παράδειγμα migration υπάρχουν σε αυτό το άρθρο.
Στη συνέχεια του άρθρου θα δούμε πως μεταφέρουμε μία βάση δεδομένων από on-premise SQL Server σε Azure SQL Database.
Θα πρέπει να έχει φτιαχτεί πρώτα μία Azure SQL Database όπως περιγράφεται σε αυτό το άρθρο.
Το παράδειγμα
Ανοίγουμε το Data Migration Assistant και επιλέγουμε Migration.
Ορίζουμε ένα project name, ότι θέλουμε να μεταφέρουμε από Source SQL Server σε Target Azure SQL Database και ότι θέλουμε να μεταφέρουμε και το σχήμα της βάσης και τα δεδομένα.
Ορίζουμε τον SQL Server που κάνει αυτή τη στιγμή host την βάση. Στην περίπτωση μας είναι ο ίδιος ο server για αυτό έβαλα localhost. Αφού είναι ο ίδιος ο server βόλευε να χρησιμοποιήσω ως Authentication type Windows ώστε να μην μου ζητήσει credentials.
Στο επόμενο βήμα βάζουμε στο Server name το όνομα του Endpoint (private ή public) στην περίπτωση μου το είχα φτιάξει public κάτα την δημιουργία της βάσης οπότε υπάρχει η πρόσβαση μέσω Internet.
Για credentials μπορούμε να χρησιμοποιήσουμε αυτά του server admin που ζητάει κατά τη δημιουργία του Server της Azure SQL Database.
Επιλέγουμε την βάση δεδομένων που θέλουμε και θα μας εμφανίσει όλα τα object που περιέχει. Στην περίπτωση μας είχα φτιάξει μόνο έναν πίνακα.
Στο επόμενο βήμα θα μας δημιουργήσει τα TSQL scripts που χρειάζεται να γίνουν deploy στην Azure SQL Database ώστε να φτιαχτεί το ίδιο σχήμα.
Στη συνέχεια θα επιλέξουμε τους πίνακες που θα μεταφέρουμε τα δεδομένα τους.
Με το που επιλέξουμε migrate θα ξεκινήσει η διαδικασία και θα μας ενημερώνει για την κατάσταση των εργασιών.
Μόλις εμφανιστεί το μήνυμα Migration successful. Αν συνδεθούμε στην Azure SQL Database θα δούμε τη βάση μας με το σχήμα που είχε στον on-premise SQL Server και τα δεδομένα που περιείχε ο πινακάς της.