Heim > Datenbank > MySQL-Tutorial > Hauptteil

MySQL führt vollständige Sicherung und Wiederherstellung ein

coldplay.xixi
Freigeben: 2021-02-13 10:00:13
nach vorne
6590 Leute haben es durchsucht

MySQL führt vollständige Sicherung und Wiederherstellung ein

Empfohlenes kostenloses Lernen: MySQL-Video-Tutorial

Artikelverzeichnis

  • Vorwort
  • 1. MySQL-Vollsicherung
    • 1. Ausführliche Erläuterung der Datenbanksicherungsmethoden
      • 1.1 Bedeutung der Datenbanksicherung
      • 1.2 Klassifizierung der Datenbanksicherung
        • 1.2.1 Physische Sicherung
        • 1.2.2 Logische Sicherung
        • 1.2.3 Vollständige Sicherung
        • 1.2.4 Differenzielle Sicherung
        • 1.2.5 Inkrementelle Sicherung
        • 1.2.6 Vergleich der Sicherungsmethoden
      • 1.3 Interpretation des MySQL-Vollsicherungskonzepts
    • 2.mysqldump-Sicherungsübung
      • 2.1 Verwenden Sie tar, um Ordnersicherungen zu packen
      • 2.2 Verwenden Sie das mysqldump-Tool zum Sichern
  • zwei, vollständige MySQL-Wiederherstellung
    • 1. Stellen Sie den gesamten Datenbankvorgang wieder her. 1.1 Quellbefehl zum Wiederherstellen der gesamten Datenbank. 1.2 MySQL-Befehl zum Wiederherstellen der gesamten Datenbank. 2. Stellen Sie Tabellenoperationen wieder her
    • 2.1 Verwenden Sie den Quellbefehl, um die Tabelle wiederherzustellen.
      • 2.2 Verwenden Sie den MySQL-Befehl, um die Tabelle wiederherzustellen.
      3. MySQL-Backup-Ideen E-Commerce, Unternehmen sind zunehmend auf Informationssysteme angewiesen. Je höher der Wert, desto wichtiger spielt die Datenbank als Kern des Informationssystems.
    • Datenbanksicherung ist ein wichtiges Mittel, um wichtige Daten rechtzeitig wiederherzustellen und im Falle eines Datenverlusts vorzubeugen des Datenverlusts
    • Eine vernünftige Datenbanksicherungslösung, die Daten bei Datenverlust effektiv wiederherstellen kann und auch die Schwierigkeit der technischen Implementierung und der effektiven Ressourcennutzung berücksichtigen muss
      • 1. MySQL-Vollsicherung
    • 1 . Eine detaillierte Einführung in Datenbanksicherungsmethoden

1.1 Die Bedeutung der Datenbanksicherung

In einer Produktionsumgebung ist die Datensicherheit von entscheidender Bedeutung, und jeder Datenverlust kann schwerwiegende Folgen haben

  • Die Bedeutung der Datenbanksicherung ist vor allem Dies spiegelt sich wider in:
  • Verbessern Sie das System. Hohe Verfügbarkeit und Notfallwiederherstellbarkeit. Wenn das Datenbanksystem abstürzt, können die Daten ohne Datenbanksicherung nicht gefunden werden.
  • Die Verwendung einer Datenbanksicherung zur Wiederherstellung der Datenbank ist die beste Lösung, um eine Datenwiederherstellung mit den niedrigsten Kosten bereitzustellen Wenn die Datenbank abstürzt, ist der Preis zu hoch. Ohne Daten gibt es kein wirksames Mittel, um Katastrophen zu verhindern Datenbank, es gibt viele Gründe für Datenverlust:

Programmfehler: Dies bedeutet, dass es zwangsläufig einige Fehler im Datenbankbetriebsprogramm gibt, die zu Datenverlust führen. Menschlicher Fehler: Es bezieht sich auf die Zerstörung der Daten durch den Benutzer Fehlbedienung, und es kann auch ein Datenverlust sein, der durch Hackerangriffe auf das System verursacht wird.

Computerfehler: Bezieht sich auf eine Beschädigung des Server-Betriebssystems oder der Software, auf der die Datenbank ausgeführt wird, was zu Datenschäden führen kann. Festplattenfehler: Bezieht sich auf die Festplatte Festplatten und andere Hardwaregeräte, auf denen Daten gespeichert sind, können nach längerem Betrieb beschädigt werden, was zu Datenverlust führen kann

Katastrophen (wie Brände, Erdbeben) und Diebstahl: bezieht sich auf das Auftreten von Naturkatastrophen usw., die dazu führen können Datenverlust

Datenverlust führt zum Beispiel am 28. Mai 2015 zum Absturz der Datenbank von Ctrip, was zu einem stündlichen Verlust von etwa 1,06 Millionen US-Dollar führt ist sehr wichtig

1.2 Klassifizierung der Datenbanksicherung
  1. Es gibt viele Arten von Sicherungsmethoden. Aus physischer und logischer Sicht kann die Sicherung in die folgenden Kategorien unterteilt werden:
  2. 1.2.1 Physische Sicherung
Bezieht sich auf zur Sicherung physischer Dateien (wie Datendateien, Protokolldateien usw.) des Datenbankbetriebssystems

Die physische Sicherung kann in Offline-Sicherung (kalte Sicherung) und Online-Sicherung (heiße Sicherung) unterteilt werden. Sicherung)

    Kalte Sicherung (Offline-Sicherung): Der Sicherungsvorgang wird ausgeführt, wenn die Datenbank geschlossen ist, wodurch die Integrität der Datenbank besser gewährleistet werden kann.
  1. Hot-Sicherung (Online-Sicherung): Der Vorgang wird ausgeführt, während die Datenbank ausgeführt wird in der Protokolldatei der Datenbank
  2. 1.2.2 Logische Sicherung

  3. bezieht sich auf die Sicherung der logischen Komponenten der Datenbank (wie Tabellen und andere Datenbankobjekte)
Aus Sicht der Datenbanksicherungsstrategie , Backup kann in Voll-Backup, differenzielles Backup und inkrementelles Backup unterteilt werden

1.2.3 Vollständige Sicherung

  • Jedes Mal eine vollständige Datensicherung
  • Kann die gesamte Datenbank sichern, einschließlich aller Datenbankobjekte wie Benutzertabellen, Systemtabellen, Indizes, Ansichten und gespeicherte Prozeduren
  • Aber es kostet mehr Zeit und Platz, sodass der Zyklus einer vollständigen Sicherung länger ist

1.2.4 Differenzielle Sicherung

  • Sichern Sie Dateien, die seit der letzten vollständigen Sicherung geändert wurden, d
  • Es ist kleiner als das erste vollständige Backup, da es nur die Datenbank enthält, die sich seit dem letzten vollständigen Backup geändert hat.
  • Es bietet den Vorteil einer schnellen Speicherung und Wiederherstellung.

1.2.5 Inkrementelles Backup.

  • Nur diejenigen, die geändert wurden seit der letzten vollständigen Sicherung geändert. Nur geänderte Dateien werden nach der Sicherung oder inkrementellen Sicherung gesichert.

1.2.6 Vergleich der Sicherungsmethoden

vollständiger Status während der SicherungTabelle 1, Tabelle 2Tabelle 1, Tabelle 2Tabelle 1, Tabelle 2Inhalt zum ersten Mal hinzugefügtTabelle erstellen 3Tabelle erstellen. 3Cre gegessen Tabelle 3 Tabelle 1, Tabelle 2, Tabelle 3, Tabelle 4
Erstellen Sie Tabelle 4 Backup-Inhalt
Tabelle 3, Tabelle 4 Tabelle 4
  • Eine vollständige Sicherung sichert jedes Mal den Inhalt der gesamten Datenbank.
  • Die differenzielle Sicherung sichert den neu hinzugefügten Inhalt nach dem ersten Hinzufügen. Der Inhalt wird ebenfalls gesichert, was festgelegt wird Basierend auf dem Status des vollständigen Backups werden alle Änderungen nach dem vollständigen Backup jedes Mal gesichert, unabhängig davon, ob zuvor ein inkrementelles Backup durchgeführt wurde. Es werden nur die neu geänderten Inhalte beim ersten Mal gesichert Sie erstellen Tabelle 3 und sichern Tabelle 3. Nachdem Sie Tabelle 4 zum zweiten Mal hinzugefügt haben, wird nur der Inhalt von Tabelle 4 gesichert, da Tabelle 3 bereits zuvor gesichert wurde
  • 1.3 Interpretation des MySQL-Vollsicherungskonzepts

Die Sicherungsmethoden von MySQL umfassen hauptsächlich Vollsicherung und inkrementelle Sicherung.

Vollsicherung ist eine Sicherung der gesamten Datenbank, Datenbankstruktur und Dateistruktur. Sie speichert die Datenbank zu dem Zeitpunkt, an dem die Sicherung abgeschlossen ist, was eine inkrementelle Sicherung ist. Die Grundlage einer vollständigen Sicherung
  • Der Vorteil einer vollständigen Sicherung besteht darin, dass die Sicherungs- und Wiederherstellungsvorgänge einfach und bequem sind. Der Nachteil besteht darin, dass viele Daten dupliziert werden, viel Sicherungsspeicherplatz beansprucht wird und die Sicherungszeit verkürzt wird long
  • In einer Produktionsumgebung werden beide Sicherungsmethoden verwendet und müssen eine vernünftige und effiziente Lösung formuliert werden, um den Zweck der Datensicherung zu erreichen und schwerwiegende Folgen von Datenverlusten zu vermeiden
  • 2.mysqldump Backup Drill

Die Sicherung der MySQL-Datenbank kann auf zwei Arten erfolgen

da die Datenbank eigentlich eine Datei ist, ein direkt gepackter Datenbankordner, oder Sie können das spezielle Sicherungstool mysqldump verwenden, um Sicherungsarbeiten durchzuführen
  • 2.1 Verwenden Sie die Sicherung des TAR-Verpackungsordners

MySQL-Datenbankdateien werden standardmäßig im Datenordner des sicheren Verzeichnisses gespeichert. Sie können den Datenordner direkt speichern, da er viel Platz beansprucht. Sie können Datenpaketierung und -komprimierung verwenden, um ihn zu speichern

  • yum -y install xz#数据库文件很大,可以使用压缩率较大的xz格式压缩,首选需要安装xz压缩格式工具tar Jcvf /opt/mysql-$(date +%F).tar.xz /usr/local/mysql/data/#对数据库文件夹进行打包操作ls /opt#查看打包命令是否运行成功,已经生成了备份文件du -sh /opt/mysql-2021-02-05.tar.xz #对比打包前后的文件大小,可以看到压缩的备份文件所占用空间很小tar -Jxvf /opt/mysql-2021-02-05.tar.xz -C /usr/local/mysql/data/systemctl restart mysql#如果数据库文件损坏数据丢失,可以解压缩文件,相当于数据恢复
    Nach dem Login kopieren

    MySQL führt vollständige Sicherung und Wiederherstellung ein

2.2 Verwenden Sie das Tool mysqldump zum SichernMySQL führt vollständige Sicherung und Wiederherstellung ein

Die obige Demonstration besteht darin, das Verzeichnis der gesamten MySQL-Datenbank zu komprimieren. Der Weg besteht darin, den gesamten Inhalt der Datenbank zu sichern

mysqldump ist ein Hilfsprogramm (im Lieferumfang enthalten). ) wird von MySQL zum Übertragen der gespeicherten Datenbank verwendet. Es generiert hauptsächlich ein SQL-Skript, das die erforderlichen Befehle enthält, um die Datenbank von Grund auf neu zu erstellen (z. B. CREATE, TABLE, INSERT usw.).
  • Die Verwendung von MySQLdump ermöglicht eine flexiblere Steuerung Der Inhalt der Sicherung. dass nur die Tabellenstruktur der Datenbank gespeichert wird und es nur eine Bibliothek in der Tabelle gibt. Sie können sehen, dass die Tabelle (mit demselben Namen) zuerst gelöscht und dann erstellt wird MySQL-Befehle. Mit diesen Anweisungen können Sie eine Tabelle mit der gleichen Struktur wie die aktuelle Tabelle erstellen. Wenn Sie die Option -d nicht verwenden, werden die Daten ebenfalls gesichert Ein Blick auf die Daten. Der Unterschied zwischen dem gespeicherten
  • #开始之前,创建库和表,用作例子mysql -uroot -p123123#输入密码进入数据库,以上为我的密码create database SCHOOL;#创建库use SCHOOL;create table CLASS01 ( id int(2) not null auto_increment, name varchar(10) not null, sex char(5) not null, hobby varchar(10), primary key (id));#创建表结构#字段一:id,最大显示长度2,不能为空,自动递增从1开始#字段二:name,可变长度字段,10,不能为空#字段三:sex,固定长度5,不能为空#字段四:hobby,可变长度,最多10字符#字段四:主键(id)insert into CLASS01 values(1,'wangyi','man','reading');insert into CLASS01 values(2,'wanger','woman','singing');#插入2条数据select * from CLASS01;#检查一下quit#退出数据库
    Nach dem Login kopieren

und dem -d-Parameter besteht darin, dass am Ende zwei Datenelemente in die Datenbank eingefügt werden. Die Sicherung der Daten ist die gespeicherte Einfügeanweisungsoperation. MySQL führt vollständige Sicherung und Wiederherstellung ein

Durch die obige Analyse ist es leicht zu verstehen, dass der Kern der Sicherung darin besteht, die Erstellungsanweisung der aktuellen Tabellenstruktur der Datenbank und die Einfügeanweisung vorhandener Daten zu speichern . Mit ihnen kann der Zustand der Datenbank direkt wiederhergestellt werden

MySQL führt vollständige Sicherung und Wiederherstellung ein

MySQL führt vollständige Sicherung und Wiederherstellung ein 2. MySQL vollständige Wiederherstellung
MySQL führt vollständige Sicherung und Wiederherstellung ein

Wir haben die vollständige Sicherung der Datenbank zuvor eingeführt, um die Datenerstellungsanweisungen in der Sicherung zu speichern SkriptdateiMySQL führt vollständige Sicherung und Wiederherstellung ein

Wenn Fehler auftreten, können Sie die folgenden Methoden verwenden, um sie wiederherzustellen
  • 1. Wiederherstellung der gesamten Datenbank
1.1 Quellbefehl-Wiederherstellung der gesamten Datenbank

MySQL führt vollständige Sicherung und Wiederherstellung ein

#使用 mysqldump 对某些表进行完全备份,命令格式如下:mysqldump -u[用户名] -p[密码] [选项] [数据库名] [数据表名] > /备份路径/备份文件名.sql#导出的为数据库脚本文件例:对库SCHOOL中的表class进行备份至/opt/目录下mysqldump -uroot -p[密码] SCHOOL CLASS01 > /opt/test01.sql
Nach dem Login kopieren
  • 1.2 MySQL-Befehl der gesamten Datenbank Wiederherstellung
#对某些库进行完全备份mysqldump -uroot -p[密码] [数据库名] > /目录/备份文件名.sql例:mysqldump -uroot -p123123 SCHOOL > /opt/test02#对多个库进行完全备份mysqldump -uroot -p123123 --databases SCHOOL sys > /opt/test03.sql#对所有库进行完全备份mysqldump -uroot -p123123 --all-databases > /opt/test04.sql#直接备份表结构mysqldump -uroot -p123123 -d SCHOOL CLASS01 > /opt/test05.sqlls /opt/#查看打包命令是否运行成功,已经生成了备份文件
Nach dem Login kopieren

2. Tabellenoperation wiederherstellen
  • Datentabellen können auch mit Quellbefehlen und MySQL-Befehlsoperationen verwendet werden

2.1 Verwenden Sie den Quellbefehl, um die Tabelle wiederherzustellen

mysql -uroot -p123123use SCHOOL;show tables;drop table CLASS01;
 source /opt/test01.sql#恢复表show tables;select * from CLASS01;#查看
Nach dem Login kopieren

MySQL führt vollständige Sicherung und Wiederherstellung ein
MySQL führt vollständige Sicherung und Wiederherstellung ein

2.2 使用 mysql 命令恢复表

quitmysql -uroot -p123123 -e 'SHOW TABLES FROM SCHOOL;'mysql -uroot -p123123 -e 'DROP TABLES SCHOOL.CLASS01;'mysql -uroot -p123123 -e 'SHOW TABLES FROM SCHOOL;'mysql -uroot -p123123 SCHOOL <p><img src="https://img.php.cn/upload/article/000/000/052/29945f61915e1a240cc5e16f53f849e5-12.png" alt="MySQL führt vollständige Sicherung und Wiederherstellung ein"></p><p><strong>3.MySQL 备份思路</strong></p>
Nach dem Login kopieren
  • MySQL 需要定期实施备份,指定合适的备份计划或策略,并严格遵守
  • 除了进行完全备份,开启 MySQL 服务器的日志功能也很重要,完全备份加上日志,可以对 MySQL 进行最大化还原
  • 备份文件的名字还需钥使用统一的易于理解的名称,推荐使用库名或表名加上时间的命名规则,在需要恢复数据库时能很容易的定位到相应的所需备份文件

相关免费学习推荐:mysql数据库(视频)

Das obige ist der detaillierte Inhalt vonMySQL führt vollständige Sicherung und Wiederherstellung ein. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage