Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 02. Februar 2012 12:39

jester
kennt CMS/ms
Registriert: 10. Juni 2011
Beiträge: 149

[GELÖST] Frage zur Sicherung der MySQL Datenbank vor Update

Hallo zusammen,

in den How Tos und anderen Tipps steht ja immer, dass man vor einem Update unbedingt die Datenbank sichern solle.

Ich bin mir aber nicht sicher, welche von den Einstellungen in phpMyAdmin ich da eigentlich wählen muss, um ein vollständiges und sicheres Backup zu erhalten.

1. Welches Format ist wichtig/richtig?

Angeboten sind SQL, LaTeX, Microsoft Excel 2000, Microsoft Word 2000, CSV-Daten für MS Excel, CSV-Daten
Ich würde ja SQL nehmen, aber ist es eventuell sinnvoll ein zweites Backup in einem anderen Format vorzunehmen?

2. Individuelle Kommentare für den Kopfbereich:

Da ist ein Freifeld, braucht man das?

3. Export in einer Transaktion zusammenfassen (ja oder nein?)

4. Fremdschlüsselüberprüfung deaktivieren (ja oder nein?)

5. DROP DATABASE hinzufügen (ja oder nein?)

6. Struktur (aktivieren oder nicht, ist defaultmäßig aktiviert)

mit "DROP TABLE" (ja oder nein?)
mit "IF NOT EXISTS" (ja oder nein?)
AUTO_INCREMENT-Wert hinzufügen (ja oder nein? ist defaultmäßig aktiviert)
Tabellen- und Feldnamen in einfachen Anführungszeichen (ja oder nein? ist defaultmäßig aktiviert)

7. In Kommentarbereich einbeziehen Erzeugungs-/Aktualisierungs-/Überprüfungszeiten (ja oder nein?)

8. SQL-Export-Kompatibilität NONE, ANSI, DB2, MAXDB, MYSQL 323, MYSQL 40, MSSQL, ORACLE, POSTGRESQL, TRADITIONAL?

9. Daten (ist defaultmäßig aktiviert) mit

Vollständige "INSERTS" (ja oder nein?)
Erweiterte "INSERTS" (ja oder nein?)
Verzögerten INSERT-Befehl verwenden (ja oder nein?)
Hexadezimalschreibweise für Binärfelder verwenden (ja oder nein?)

10. Exporttyp INSERT, UPDATE oder REPLACE?

11. Dateinamenskonvention __SERVER__ (ja/nein Konvention merken, ja aktiviert)

12. Kompression keine, ZIP-komprimiert, GZip-komprimiert oder BZip-komprimiert?


Wäre super, wenn ich da Tipps und Erklärungen bekommen könnte.

Danke!

jester

Offline

#2 02. Februar 2012 13:15

nockenfell
Moderator
Ort: Lenzburg, Schweiz
Registriert: 09. November 2010
Beiträge: 2.927
Webseite

Re: [GELÖST] Frage zur Sicherung der MySQL Datenbank vor Update

Einiges einfacher geht das mit dem MySQLDumper: http://www.mysqldumper.de.

Mit diesem kannst du sehr einfach Backups erstellen und auch wieder zurückspielen. Gerade wenn die DB grösser ist, ist der phpMyAdmin damit oft eher überfordert. Hier hat MySQLDumper einige gute techniken integriert, welche auch das Backupen von grossen Tabellen und Datenbanken reibungslos ermöglichen.


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#3 02. Februar 2012 13:23

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.435

Re: [GELÖST] Frage zur Sicherung der MySQL Datenbank vor Update

Im Prinzip kannst Du die Einstellung so lassen wie sie sind.

Du musst nur folgendes beachten:

Im SQL Backup steht nachher auch drin, dass die Datenbank mit Namen xyz erstellt werden soll. Das wird lokal meist kein Problem sein (sofern die Datenbank nicht schon existiert), aber auf einem Shared-Webspace hat man meist keine Erlaubnis auf diesem Wege selbst Datenbanken zu erstellen. I.d.R. wird die Datenbank beim Provider über separatem Wege erstellt. D.h. Du müsstest das SQL Script in einem Texteditor öffnen und all die Zeilen, die sich auf das Erstellen der Datenbank beziehen, entfernen, bevor Du es später importierst.
(Stehen ganz oben: CREATE DATABASE und USE ... - Du brauchst im Prinzip nur alles ab CREATE TABLE ... )

5. DROP DATABASE hinzufügen (ja oder nein?)

Wird aufgrund o.g. Problem nicht überall funktionieren. Also lieber "Nein".

mit "DROP TABLE" (ja oder nein?)

Im Sinne eines Abbildes der Datenbank würde ich das aktivieren. Aber Achtung! Damit werden beim Import ALLE bereits bestehenden Inhalte gelöscht und exakt nur die Daten wieder hergestellt, die man gesichert hat.

mit "IF NOT EXISTS" (ja oder nein?)

Das kommt auf die Zieldatenbank an, in die importiert werden soll.
Mit "IF NOT EXISTS" werden beim Import nur die Tabellen erstellt, die noch nicht oder nicht mehr existieren. Aus dem gleichen Grund wie oben bereits genannt - Abbild einer Datenbank - würde ich das nicht aktivieren.

"DROP TABLE" (ja) und "IF NOT EXISTS" (ja) ergibt in diesem Falle ohnehin wenig Sinn.

Im Sinne eines Abbilds einer Datenbank, ist es wichtig, dass man nicht nur die Inhalte der DB, sondern auch die komplette Struktur der DB sichert (Tabellen, Spalten etc.). Und damit das auch exakt so wieder hergestellt werden kann, muss man beim Import eben "tabula rasa" machen bzw. dafür sorgen, dass bereits bestehende Inhalte die Wiederherstellung älterer Datensätze nicht behindern.

10. Exporttyp INSERT, UPDATE oder REPLACE?

INSERT macht nur dann Sinn, wenn die Zieldatenbank, in die importiert werden soll, leer ist.
Anderenfalls hast Du Einträge doppelt oder sie können mitunter nicht importiert werden.
Bei UPDATE muss die Datenbank bereits alle zu importierenden Inhalte zumindest in ihrer Struktur haben. Diese werden dann beim Import wieder auf den letzten Stand aktualisiert. Inhalte, die noch nicht oder nicht mehr in der DB stehen, können so nicht importiert werden.
REPLACE ersetzt den kompletten Datensatz egal ob er existiert oder nicht. Existiert er, wird er erst gelöscht. Existiert er nicht, wird er wie bei INSERT hinzugefügt.

Du musst also wissen, wie Du das Backup später einspielen willst. Ich persönlich nehme immer INSERT. Wenn beim Update etwas schiefgeht, leere ich die Zieldatenbank komplett (DROP TABLE wäre also in diesem Falle nicht nötig) und kann so ein exaktes Abbild der alten Datenbank wieder herstellen (die Option DROP TABLE ist vor allem dann sinnvoll, wenn mehrere Systeme die gleiche Datenbank nutzen und man sie deshalb nicht komplett leeren kann). Alles andere macht meiner Meinung nach nur dann Sinn, wenn man die alten und neuen Daten zusammenführen will. Das ist hier aber eher selten der Fall.

EDIT:

Ausnahme ist z.B., wenn man das Update parallel zur bestehenden Website mit Hilfe einer Neuinstallation in einem gesonderten Verzeichnis und einer neuen DB vornimmt und die alten Inhalte in die neue CMS-Version übernehmen will. Dann emfiehlt sich der Export-Typ "REPLACE", damit die Demo-Inhalte der Neuinstallation den Import nicht behindern können.
(siehe z.B. dieses Thema)

Beitrag geändert von NaN (23. Juli 2013 14:45)


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#4 02. Februar 2012 13:55

jester
kennt CMS/ms
Registriert: 10. Juni 2011
Beiträge: 149

Re: [GELÖST] Frage zur Sicherung der MySQL Datenbank vor Update

nockenfell schrieb:

Einiges einfacher geht das mit dem MySQLDumper: http://www.mysqldumper.de.

Mit diesem kannst du sehr einfach Backups erstellen und auch wieder zurückspielen. Gerade wenn die DB grösser ist, ist der phpMyAdmin damit oft eher überfordert. Hier hat MySQLDumper einige gute techniken integriert, welche auch das Backupen von grossen Tabellen und Datenbanken reibungslos ermöglichen.

Das ist bestimmt komfortabel. Leider lässt mein Provider keine Scriptinstallation zu. sad

Offline

#5 02. Februar 2012 13:58

jester
kennt CMS/ms
Registriert: 10. Juni 2011
Beiträge: 149

Re: [GELÖST] Frage zur Sicherung der MySQL Datenbank vor Update

NaN, das war super erklärt. Nun habe ich ein viel besseres Gefühl beim Sichern der Daten. Denn mir ist durchaus schon mal passiert, dass ich dachte, ich hätte ein tolles Backup und dann hat das Rückspielen der Daten doch nicht funktioniert... Das will ich unbedingt vermeiden.

Offline

#6 02. Februar 2012 14:09

nockenfell
Moderator
Ort: Lenzburg, Schweiz
Registriert: 09. November 2010
Beiträge: 2.927
Webseite

Re: [GELÖST] Frage zur Sicherung der MySQL Datenbank vor Update

jester schrieb:

Das ist bestimmt komfortabel. Leider lässt mein Provider keine Scriptinstallation zu. sad

MySQLDumper ist ganz ähnlich wie CMS Made Simple. Wenn du also CMS Made Simple "installieren" kannst, kannst du MySQLDumper auch ohne Probleme installieren.


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#7 02. Februar 2012 16:39

jester
kennt CMS/ms
Registriert: 10. Juni 2011
Beiträge: 149

Re: [GELÖST] Frage zur Sicherung der MySQL Datenbank vor Update

Oh, gut zu wissen! Das hat ein schneller Blick auf die Website nicht offenbart. Schau ich mir an!!!

Offline

#8 03. Februar 2018 10:36

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.017
Webseite

Re: [GELÖST] Frage zur Sicherung der MySQL Datenbank vor Update

nockenfell schrieb:

Einiges einfacher geht das mit dem MySQLDumper: http://www.mysqldumper.de.

Der Vollständigkeit halber - nunmehr besser mit dessen Nachfolger, siehe

http://www.cmsmadesimple.de/forum/viewtopic.php?id=4755

Offline