Δημιουργία αντιγράφων ασφαλείας και επαναφορά βάσεων δεδομένων MySQL (έκδοση Windows)

Σελίδα ενημέρωση :
Ημερομηνία δημιουργίας σελίδας :

Περιβάλλον λειτουργίας

MySQL
  • MySQL 8.0 Κοινότητα Edition
παράθυρα
  • Παράθυρα 11

Προϋποθέσεις

MySQL
  • MySQL 8,0
παράθυρα
  • Παράθυρα 11
  • Παράθυρα 10
Διακομιστής των Windows
  • Τα Windows Server 2022
  • Τα Windows Server 2019
  • Τα Windows Server 2016
  • Windows Server 2012 R2

Προϋπόθεση

  • Έχει εγκατασταθεί μια βάση δεδομένων για MySQL.
  • Η βάση δεδομένων για την οποία θα δημιουργηθεί αντίγραφο ασφαλείας υπάρχει ήδη.
  • Έχετε ορίσει μεταβλητές περιβάλλοντος έτσι ώστε να μπορείτε να εκτελέσετε mysql από τη γραμμή εντολών.

Ποιοι είναι οι τύποι αντιγράφων ασφαλείας;

Αν και δεν συζητείται λεπτομερώς εδώ, η MySQL διαθέτει τους ακόλουθους τύπους αντιγράφων ασφαλείας:

αντιγράφων
Εντολές δημιουργίαςασφαλείαςΤύποι δεδομένων αντιγράφων ασφαλείαςΠαρατηρήσεις
mysqldump Λογικά αντίγραφα ασφαλείας Μια παλιά μέθοδος δημιουργίας αντιγράφων ασφαλείας. Το γραφικό περιβάλλον χρήστη χρησιμοποιεί επίσης αυτό
mysqlpump Λογικά αντίγραφα ασφαλείας Βελτιωμένη έκδοση του mysqldump
MySQL Shell Instance Dump Utility και Dump Loading Utility Λογικά αντίγραφα ασφαλείας Το πιο πρόσφατο λογικό αντίγραφο ασφαλείας αυτή τη στιγμή
Percona XtraBackup Φυσικά αντίγραφα ασφαλείας Υποστήριξη τρίτων για φυσική δημιουργία αντιγράφων ασφαλείας
ΚΛΩΝΟΠΟΙΉΣΤΕ PLUGIN Φυσικά αντίγραφα ασφαλείας MySQL επίσημα φυσικά αντίγραφα ασφαλείας. Ωστόσο, πρέπει να προσθέσετε μια προσθήκη.

Δημιουργία αντιγράφων ασφαλείας βάσεων δεδομένων με το GUI (MySQL Workbench)

Εάν θέλετε να λειτουργείτε με ασφάλεια στο GUI χωρίς να χρησιμοποιείτε εντολές, μπορείτε να δημιουργήσετε αντίγραφα ασφαλείας με το MySQL Workbench. Ο τύπος δημιουργίας αντιγράφων ασφαλείας που εκτελείται από το MySQL Workbench θα είναι "mysqldump".

Ξεκινήστε το MySQL Workbench.

Επιλέξτε τη σύνδεση που περιέχει τη βάση δεδομένων για την οποία θέλετε να δημιουργήσετε αντίγραφο ασφαλείας.

Με τη βάση δεδομένων για την οποία θα δημιουργηθεί αντίγραφο ασφαλείας, επιλέξτε την καρτέλα Διαχείριση από την Περιήγηση στα αριστερά και, στη συνέχεια, επιλέξτε Εξαγωγή δεδομένων.

ο Εξαγωγή δεδομένων ανοίγει η οθόνη. Η οθόνη είναι αρκετά μεγάλη, επομένως επεκτείνετε το παράθυρο μέχρι να δείτε το κουμπί "Έναρξη εξαγωγής" κάτω δεξιά.

Πρώτα, επιλέξτε τις βάσεις δεδομένων για τις οποίες θέλετε να δημιουργήσετε αντίγραφα ασφαλείας. Μπορείτε επίσης να επιλέξετε περισσότερα από ένα.

Στο "Αντικείμενα προς εξαγωγή", μπορείτε επίσης να επιλέξετε να δημιουργήσετε αντίγραφα ασφαλείας των διαδικασιών και των εναυσμάτων. Αυτό το πεδίο είναι προαιρετικό.

Στις "Επιλογές εξαγωγής", μπορείτε να επιλέξετε τις ακόλουθες δύο επιλογές.

Περιγραφή τύπου
Εξαγωγή σε φάκελο έργου ένδειξης σφαλμάτων Έξοδος σε καθορισμένο φάκελο ως αρχείο πίνακα ή διαδικασίας.
Εξαγωγή σε αυτόνομο αρχείο Ενσωματώστε τα πάντα σε ένα μόνο αρχείο και έξοδο.

Δεν έχει σημασία με ποιον τρόπο εξάγετε. Η παραπάνω επιλογή είναι εύκολο να αφαιρεθεί εάν θέλετε να επαναφέρετε μόνο έναν συγκεκριμένο πίνακα. Η παρακάτω επιλογή εξέρχεται σε ένα μόνο αρχείο, διευκολύνοντας τη μετακίνηση και τη διαχείριση αρχείων ως μονάδα βάσης δεδομένων. Σε αυτήν την περίπτωση, έχω επιλέξει τα εξής.

Αφού ορίσετε τις ρυθμίσεις, κάντε κλικ στο κουμπί "Έναρξη εξαγωγής" στην κάτω δεξιά γωνία για να ξεκινήσετε την εξαγωγή.

Η εξαγωγή ξεκινά και ολοκληρώνεται.

Εάν το εξάγετε ως ένα μόνο αρχείο, θα μοιάζει με αυτό:

Εάν κάνετε εξαγωγή σε φάκελο, θα μοιάζει με αυτό:

Επαναφορά βάσης δεδομένων με το γραφικό περιβάλλον χρήστη (MySQL Workbench)

Ανοίξτε το MySQL Workbench, επιλέξτε μια σύνδεση, επιλέξτε την καρτέλα Διαχείριση από το Navigator στα αριστερά και επιλέξτε Εισαγωγή/Επαναφορά δεδομένων. Όπως λέει "Εισαγωγή / Επαναφορά", μπορείτε να δημιουργήσετε μια νέα βάση δεδομένων από το εξαγόμενο αρχείο ή να αντικαταστήσετε την αρχική βάση δεδομένων.

Αναπτύξτε το παράθυρο μέχρι να δείτε το κουμπί "Έναρξη εισαγωγής" στην κάτω δεξιά γωνία.

Επιλέξτε "Επιλογές εισαγωγής" σύμφωνα με τη μορφή αρχείου εξαγωγής. Δεδομένου ότι εξήγαγα ως ενιαίο αρχείο αυτή τη φορά, επέλεξα "Εισαγωγή από αυτόνομο αρχείο" παρακάτω και καθόρισα το εξαγόμενο αρχείο.

Επιλέξτε το σχήμα (βάση δεδομένων) στο οποίο θέλετε να επαναφέρετε. Μπορείτε να επαναφέρετε μια υπάρχουσα βάση δεδομένων ή να την επαναφέρετε ως νέα βάση δεδομένων από το κουμπί "Νέο" στα δεξιά.

Αφού καθορίσετε τις προδιαγραφές, κάντε κλικ στο κουμπί "Έναρξη εισαγωγής" κάτω δεξιά για να ξεκινήσετε την επαναφορά.

Μόλις ολοκληρωθεί η επαναφορά, βεβαιωθείτε ότι τα δεδομένα σας έχουν επιστρέψει.

Δημιουργήστε ένα λογαριασμό για δημιουργία αντιγράφων ασφαλείας βάσης δεδομένων με εντολή

Δεν υπάρχει πρόβλημα εάν εκτελέσετε μία μόνο εντολή και δημιουργήσετε αντίγραφα ασφαλείας, αλλά για παράδειγμα, εάν προετοιμάσετε την εντολή ως αρχείο εκ των προτέρων και την εκτελέσετε, πρέπει να γράψετε τον κωδικό πρόσβασης σε απλό κείμενο, επομένως είναι ασφαλέστερο να δημιουργήσετε έναν ξεχωριστό λογαριασμό για την εκτέλεση αντιγράφων ασφαλείας.

Ορισμένα από τα δικαιώματα που απαιτούνται για τη δημιουργία αντιγράφων ασφαλείας ενδέχεται να αυξηθούν ή να μειωθούν ανάλογα με τις πληροφορίες που απαιτούνται.

  • ΓΕΓΟΝΌΣ
  • ΤΡΑΠΕΖΙΑ ΚΛΕΙΔΑΡΙΑΣ
  • ΔΙΑΛΈΓΩ
  • ΕΜΦΆΝΙΣΗ ΠΡΟΒΟΛΉΣ

Εάν το δημιουργήσετε με μια εντολή, θα μοιάζει με αυτό. Χρησιμοποιήστε το εργαλείο γραμμής εντολών MySQL.

create user '<ユーザー名>'@'<ホスト名>' identified by '<パスワード>';
GRANT EVENT, LOCK TABLES, SELECT, SHOW VIEW ON <データベース名>.* TO '<ユーザー名>'@'<ホスト名>';
flush privileges;

παράδειγμα

create user 'backup_user'@'localhost' identified by 'password';
GRANT EVENT, LOCK TABLES, SELECT, SHOW VIEW ON test_database.* TO 'backup_user'@'localhost';
flush privileges;

Δικαιώματα φακέλου για τον προορισμό αντιγράφων ασφαλείας

Τα δικαιώματα του φακέλου όπου αποθηκεύεται το αρχείο αντιγράφου ασφαλείας πρέπει να οριστούν με τον ίδιο τρόπο όπως τα δικαιώματα για την εκτέλεση της εντολής. Εάν εκτελέσετε την εντολή με δικαιώματα διαχειριστή, δεν χρειάζεται να ορίσετε πρόσθετα δικαιώματα στο φάκελο.

Δημιουργία αντιγράφων ασφαλείας μιας βάσης δεδομένων με την εντολή (mysqldump)

Υπάρχουν πολλά αντίγραφα ασφαλείας με εντολή, αλλά αυτή τη φορά θα δημιουργήσουμε αντίγραφα ασφαλείας με το "mysqldump", το οποίο έχει χρησιμοποιηθεί για μεγάλο χρονικό διάστημα και είναι σταθερό.

Κάντε δεξί κλικ στο μενού Έναρξη για να εκκινήσετε το Terminal (Γραμμή εντολών). Σημειώστε ότι δεν είναι "MySQL 8.0 Command Line Client".

Μπορείτε να δημιουργήσετε αντίγραφα ασφαλείας με την ακόλουθη εντολή:

mysqldump -u <ユーザー名> -p<パスワード> --no-tablespaces --single-transaction --triggers --routines --events --default-character-set=utf8 <データベース名> > "<バックアップファイルパス>"

παράδειγμα

mysqldump -u backup_user -ppassword --no-tablespaces --single-transaction --triggers --routines --events --default-character-set=utf8 test_database > "C:\Temporary\Backup.sql"

  • --default-character-set=utf8 Εάν καθορίσετε τον ίδιο κωδικό χαρακτήρα όπως κατά τη δημιουργία αντιγράφων ασφαλείας στο GUI, θα είναι ο ίδιος όπως κατά τη δημιουργία αντιγράφων ασφαλείας στο GUI. Με αυτόν τον τρόπο, μπορείτε επίσης να το εισαγάγετε στο GUI.
  • Μην συμπεριλάβετε κενό διάστημα μεταξύ του πεδίου κωδικού πρόσβασης και -p του κωδικού πρόσβασης.
  • Εάν θέλετε επίσης να εξάγετε πληροφορίες χώρου πίνακα, --no-tablespaces καταργήστε το . Σε αυτήν την περίπτωση, τα δικαιώματα του χρήστη που εκτελείται πρέπει να είναι . PROCESS

Θα δημιουργηθεί ένα αρχείο αντιγράφου ασφαλείας στην καθορισμένη θέση.

Επαναφορά βάσης δεδομένων με την εντολή (mysqldump)

Τα αρχεία που υποστηρίζονται από το mysqldump είναι σε μορφή που μπορεί να εκτελεστεί σε SQL, οπότε το μόνο που έχετε να κάνετε είναι να εκτελέσετε την SQL προορισμού. Νομίζω ότι οι περισσότερες επαναφορές γίνονται χειροκίνητα, οπότε δεν υπάρχει πρόβλημα αν το εκτελέσετε ως λογαριασμό root.

Εάν θέλετε να το εκτελέσετε από μια εντολή, εκτελέστε το στη γραμμή εντολών αντί για το PowerShell. Αυτό συμβαίνει επειδή το σύμβολο δεν μπορεί να χρησιμοποιηθεί στο < PowerShell.

Εκτελέστε την ακόλουθη εντολή:

mysql -u root -p<root のパスワード> <データベース名> < <バックアップした SQL のファイルパス>

παράδειγμα

mysql -u root -ppassword test_database < C:\Temporary\Backup.sql

Αυτοματοποιημένα αντίγραφα ασφαλείας βάσεων δεδομένων

Για τα Windows, είναι σύνηθες να χρησιμοποιείτε το Χρονοδιάγραμμα εργασιών. Αρχικά, δημιουργήστε ένα αρχείο δέσμης. Δημιουργήστε ένα αρχείο bat, εισαγάγετε τα περιεχόμενα όπως δημιουργήθηκαν αντίγραφα ασφαλείας από την εντολή και αποθηκεύστε το. Η κωδικοποίηση χαρακτήρων αποθηκεύεται με το Shift-JIS. Η θέση και το όνομα αρχείου του αρχείου δέσμης είναι αυθαίρετα.

Εγγραφείτε στο Task Scheduler. Κάντε δεξί κλικ στο μενού Έναρξη και επιλέξτε Διαχείριση υπολογιστή.

Από το μενού στα αριστερά, επιλέξτε Διαχείριση Υπολογιστή > Εργαλεία συστήματος > Χρονοδιάγραμμα εργασιών > Βιβλιοθήκη χρονοδιαγράμματος εργασιών. Επιλέξτε "Δημιουργία εργασίας..." από το μενού στα δεξιά.

Ρυθμίστε τις παραμέτρους της καρτέλας Γενικά. Το "Όνομα" θα εμφανιστεί στη λίστα εργασιών, οπότε εισαγάγετε ένα όνομα που είναι εύκολα κατανοητό. Στις επιλογές ασφαλείας, επιλέξτε "Εκτέλεση ανεξάρτητα από το αν ο χρήστης είναι συνδεδεμένος ή όχι".

Στην καρτέλα "Ενεργοποίηση", μπορείτε να ορίσετε πότε θα εκτελέσετε τη δημιουργία αντιγράφων ασφαλείας. Ορίστε αυτήν τη ρύθμιση ανάλογα με τη λειτουργία σας.

Στην καρτέλα "Λειτουργία", ρυθμίστε το για να ξεκινήσετε το αρχείο δέσμης που μόλις δημιουργήσατε.

Αφού ρυθμίσετε το καθένα, επιβεβαιώστε με το OK κουμπί.

Εισαγάγετε τον κωδικό πρόσβασής σας για να εγγραφείτε για εκτέλεση στον καθορισμένο λογαριασμό.

Μετά από αυτό, ελέγξτε εάν το αντίγραφο ασφαλείας θα εκτελεστεί την καθορισμένη ώρα.