Σαν DBA πρέπει να έχω μια σωστή πολιτική backup που να ταιριάζει με τις εκάστοτε ανάγκες της database. Πέρα όμως από αυτή την πολιτική πρέπει να φροντίζω να φυλάσσω τα backup αυτά σε χώρους εκτός κτηρίου / περιοχής για τον φόβο των Ιουδαίων.
Από το CU2 του SQL Server 2012 μας δόθηκε η δυνατότητα να μπορούμε να εκτελούμε backups απευθείας σε azure storage. Πλέον αυτή η δυνατότητα στον SQL Server 2014 (CTP2) έχει μεγαλώσει και δίνει περισσότερες δυνατότητες. Μια σημαντική που πιστεύω ότι θα κάνει πολλούς να αναθεωρήσουν την άποψη τους είναι ότι αυτά μπορεί να είναι encrypted αλλά και compressed με συνέπεια και ασφάλεια να έχω περισσότερη αλλά και οικονομία χώρου να κάνω στο azure storage.
Σε αυτό το post θα ξεκινήσω από τα βασικά και θα σας δείξω πως μπορείτε να επιτύχετε αυτό μέσα από απλά βήματα.
Δημιουργία Windows Azure Storage/Container
Πρώτα από όλα θα πρέπει να έχουμε windows azure storage. Αυτό για να γίνει θα πρέπει να κάνουμε login στο azure account μας
Και αφού έχουμε δώσει τα σωστά θα οδηγηθούμε στον πίνακα των επιλογών που έχουμε στο azure account μας.
Επιλέγουμε την επιλογή STORAGE και πατάμε CREATE A STORAGE ACCOUNT
Θα μας ανοίξει ο παρακάτω διάλογος στον οποίο συμπληρώνουμε το URL επιλέγουμε το location και πατάμε CREATE.
Μέσα σε μερικά δευτερόλεπτα θα δημιουργηθεί το storage μας και θα εμφανιστεί η λίστα με όσα έχουμε φτιάξει
Στο όνομα του storage κάνουμε click και θα μας εμφανιστεί o πίνακας ελέγχου για αυτό
Σε αυτόν υπάρχουν δύο επιλογές που μας ενδιαφέρουν άμεσα όπως δείχνουν και τα βελάκια. Πατάμε στην επιλογή που δείχνει το κάτω βελάκι και μας εμφανίζεται ένα παράθυρο με τα στοιχεία που χρειαζόμαστε για να φτιάξουμε το credential με το οποίο μέσα από τον SQL Server θα συνδεθούμε στο azure storage. Σε αυτό κάνουμε copy το storage account name και το primary access key και στην συνέχεια κλείνουμε το παράθυρο.
Στην συνέχεια πατάμε την επιλογή containers όπως δείχνει το πρώτο βέλος και δημιουργούμε ένα νέο container
Δίνουμε το όνομα που θέλουμε στον container και επιλέγουμε private access
Με την ολοκλήρωση της διαδικασίας θα έχουμε πλέον διαθέσιμο τον container μας και σημειώνουμε το όνομα του καθώς θα μας χρειαστεί παρακάτω.
Δημιουργία Credential για την πρόσβαση στο azure storage
Μέσα από τον SSMS ανοίγουμε ένα νέο query και φτιάχνουμε το credential με το οποίο θα συνδεθούμε στο azure δίνοντας τις πληροφορίες που χρειάζονται
CREATE CREDENTIAL azurebackup WITH
IDENTITY = 'εδώ βάζουμε το storage account name που κάναμε copy πριν', SECRET ='εδώ βάζουμε το primary access key'
Backup Database
Μέσα από τον SSMS επιλέγουμε την database που θέλουμε να πάρουμε backup και με δεξί κλικ Tasks > Backup μας εμφανίζεται το παράθυρο του backup. Σε αυτό στο destination section επιλέγουμε URL και συμπληρώνουμε τα στοιχεία που είναι το όνομα του αρχείου του backup, το credential που πριν λίγο φτιάξαμε, το όνομα του azure storage container και φυσικά το url του storage.
Φυσικά μπορούμε να γράψουμε το παρακάτω T-SQL command και έτσι δεν χρειάζεται να καταφύγουμε στο γραφικό περιβάλλον.
BACKUP DATABASE demo
TO URL ='https://<my storage name>.blob.core.windows.net/sqlbackups/demo.dat'
WITH CREDENTIAL = N'azurebackup'
Με την ολοκλήρωση της διαδικασίας θα δούμε στο πίνακα ελέγχου του azure ότι θα υπάρχει ένα file το οποίο και περιέχει το backup μας.
Με αυτά έχουμε κάνει την αρχή. Θα συνεχίζουμε όμως στο θέμα αυτό σε επόμενο post.
/*antonch*/