MySQL Datenbank Backup erstellen

Die meisten Webseites beinhalten eine MySQL (MariaDB) Datenbank, wichtig genug ein Backup der Datenbank zu erstellen. Die Anleitung zeigt, wie man mit phpMyAdmin ein Datenbank Backup erstellt, um eine Kopie auf dem Computer zu speichern.

Schritt 1 – Anmelden in phpMyAdmin

Shared Hoster stellen webbasierte Oberflächen wie das cPanel zur Verfügung. Nach Login zum Steuerungs-Dashboard findet man unter Tools – Databases den Link zu phpMyAdmin.

phpMyAdmin Login

Schritt 2 – Klicke auf Datenbanken oben im Menü

MySQL Datenbank Backup erstellen

Bei Schritt 3 – Klicke auf den Namen der Datenbank

MySQL Namen der Datenbank

Schritt 4 – mit Exportieren ein Backup erstellen

MySQL phpMyAdmin Datenbank Exportieren

Bei Schritt 5 – Wähle „Angepasst – zeige alle möglichen Optionen an“

phpMyAdmin Exportmethode

Beim Exportieren sind Standardmässig alle Tabellen ausgewählt. Wir empfehlen das so zu belassen.

Schritt 6 – Scrolle zu Objekterstellungsoptionen

Im Bereich Objekterstellungsoptionen aktiviere den Schieberegler für DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT / TRIGGER-Befehl hinzufügen, die zweite Option unter Befehle hinzufügen.

MySQL phpMyAdmin Objekterstellungsoptionen

Schritt 7 – Scrolle runter und klicke auf Exportieren

Die exportierten Tabellen werden jetzt in einer Datei gespeichert, zum Beispiel in die Datei db_name.sql. Falls nötig, kann man den MySQL Datenbank Export wieder importieren.

phpMyAdmin MySQL Datenbank Backup Exportieren

Der MySQL Datenbank Backup erstellen als Dump gespeichert in einer sql-Datei, standardmässig im Downloads Ordner auf dem Computer.

Was ist phpMyAdmin?

Das WebUI phpMyAdmin ist eine freie Webanwendung zur Administration von MySQL-Datenbanken und deren Fork MariaDB. Das Software-Tool ist in PHP implementiert, daher kommt der Name phpMyAdmin. Die meisten Funktionen können ausgeführt werden, ohne selbst SQL-Anweisungen zu schreiben, wie MySQL Datenbanken als Backup zu Exportieren, Datensätze auflisten, Tabellen anlegen/löschen, Spalten hinzufügen, Datenbanken erstellen/löschen und Benutzer verwalten.

phpMyAdmin ist unter der GNU General Public License lizenziert und ist auch in vielen Linux-Distributionen enthalten. Derzeit werden 75 Sprachen unterstützt, wobei die Übersetzung je nach Sprache mehr oder weniger vollständig ist.

MySQL Datenbank Backup Befehl im Terminal

Hat man kein phpMyAdmin zur Verfügung, kann ein MySQL Datenbank Backup mit dem MariaDB Backup Programm erstellt werden, mit dem Befehl mysqldump.

$ sudo mysqldump -u root db_name > db_name.sql

quote mysqldump ist jetzt ein symbolischer Link zu mariadb-dump.

Eine Wiederherstellung ermöglicht ein Restore mit dem Befehl mysql und der sql-Datei, diese als MySQL Datenbank Backup zuvor mit dem Befehl mysqldump erstellt wurde.

$ sudo mysql -u root db_name < db_name.sql

Der Beitrag hier könnte dich auch interessieren.

Text in Base64 und zurück Konvertieren in PowerShell

Base64 ist ein Format, das es erlaubt, Binärdaten in Text, und Text in Binärdaten zu Konvertieren, hier in der PowerShell. Die Base64-Codierung ist ein Prozess zum Konvertieren von Binärdaten in ein ASCII-Zeichenfolgeformat, und die Kodierung von 8-Bit-Binärdaten.

Base64 wandelt Daten (hauptsächlich Bilder) in Zeichen um, und zwar ursprünglich mit einem Satz von 64 Zeichen (Namensursprung), die sich in jedem ISO 8859-1 (auch bekannt als Latin-1) Zeichensatz wiederfinden und somit auch überall anzeigen lassen. Oder anders ausgedrückt: Aus einem Bild wird HTML-Code, denn inzwischen ist Base64 zum HTML-Standard geworden und es wird somit für Internetprojekte eingesetzt, vor allem eben für Inline-Grafiken.

Die Base64 Codierung wird auch häufig bei Mail-Systeme zum Versenden von E-Mail-Anhängen verwendet, da SMTP in seiner ursprünglichen Form nur für den Transport von 7-Bit-ASCII-Zeichen konzipiert war. Durch die Codierung eines Anhangs als Base64 vor dem Senden und die anschließende Decodierung beim Empfang wird sichergestellt, dass ältere SMTP-Server den Anhang nicht beeinträchtigen.

Text in Base64 Konvertieren in PowerShell

Die folgende Funktion Set-Base64 ermöglicht, ein Text in die Base64 Kodierung in der PowerShell zu konvertieren. Die Funktion Get-Base64 sorgt für das konvertieren zurück zum lesbaren Text.

Function Set-Base64
{
	param (
	[String]$arg
	)
	$textout = [System.Text.Encoding]::UTF8.GetBytes($arg)
	[Convert]::ToBase64String($textout)
}

Function Get-Base64
{
	param (
	[String]$arg
	)
	$textout = [Convert]::FromBase64String($arg)
	[System.Text.Encoding]::UTF8.GetString($textout)
}

Hinweis. wenn die Funktionen unter dem %userprofile%\Documents\WindowsPowerShell in die Datei Microsoft.PowerShell_profile.ps1 eingefügt wird, stehen die beiden Befehle in der PowerShell zur Ausführung zur Verfügung.

Base64 Code in Text Konvertieren

In der PowerShell konvertiert Set-Base64 den Text mit Übergabe in Base64 Kodierung, und mit Get-Base64 zurück in den lesbaren Text.

Text in Base64 und zurück konvertieren in PowerShell
Text in Base64 und zurück Konvertieren in PowerShell

Binärdatei in Base64 Codierung Umwandeln

Dateien und Bilder lassen sich in Base64 Text umwandeln, hierzu lässt sich das Powershell-Cmdlet Get-Content verwenden, mit dem Parameter -Encoding Byte und -Raw.

[convert]::ToBase64String((get-content -Path C:\temp\image.png -encoding byte -Raw))

Der Parameter -Raw sorgt dafür, dass die Datei komplett und nicht zeilenweise eingelesen wird, -Encoding Byte sagt PowerShell, dass es sich um eine Binärdatei handelt.

PowerShell: ToBase64String, Text in Base64 und zurück Konvertieren in PowerShell
PowerShell: ToBase64String

Bilddatei in Base64 Text Konvertieren

Bilddatei in Base64 Kodierung umwandeln, hierzu wird der PowerShell Befehl convert mit Parameter verwenden, der Base64 Text wird in die Datei image.txt geschreiben.

[convert]::ToBase64String((get-content -Path C:\temp\image.png -encoding byte -Raw)) > C:\temp\image.txt
Bild in Base64 Konvertieren in PowerShell
PowerShell: [convert]::ToBase64String

Woher wiss ich, ob es funktioniert?

Nehmen wir ein weiteres Beispiel mit der Bilddatei bluebox.png, die du auf dein Computer herunterladen kannst. Konvertiere jetzt einfach die kleine 10×10-Pixel Grafik mit dieser Befehlszeile in der PowerShell.

[convert]::ToBase64String((get-content -Path C:\temp\bluebox.png -encoding byte -Raw)) > C:\temp\img.txt

Erstelle als Nächstes eine HTML-Datei mit dem Inhalt wie unten gezeigt.

<div>
  <p>A blue box</p>
  <img src="data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAIAAAACUFjqAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYSURBVChTY2RQ+8+AGzBBaRxgZEozMAAAbOYBOV4WE6YAAAAASUVORK5CYII=" alt="Blue box" />
</div>

Füge den Inhalt aus der Datei C:\temp\img.txt ein und platziere den Base64 <img src="data:image/png;base64,code hier" alt="Blue box" />

Doppelklicke auf die soeben erstellte HTML-Datei. Wenn alles richtig gemacht wurde, wird im Browser ein kleines blaues Kästchen angezeigt.

Woher wissen ich, ob es funktioniert?

Addendum

Base64 ist keine Verschlüsselungsmethode. Es ist lediglich ein Encoding-Verfahren, das dazu dient, binäre Daten in eine für den Menschen lesbare Form zu konvertieren. Es bietet keine Sicherheit oder Geheimhaltung der Daten.

Base64 kodiert binäre Daten, indem es sie in eine Zeichenfolge von ASCII-Zeichen umwandelt. Dies ist nützlich, wenn man binäre Daten in Umgebungen übertragen möchte, die nur Textdaten unterstützen, wie z.B. E-Mail-Systeme.

  E-Mail mit Anhang „content-transfer-encoding: base64“ senden im Beitrag hier.