Ergebnis 1 bis 13 von 13

Thema: Backup Größe durch Phpmyadmin und contao's "Backup Datenbank" unterscheiden sich

  1. #1
    Contao-Nutzer
    Registriert seit
    01.11.2009.
    Beiträge
    35

    Frage Backup Größe durch Phpmyadmin und contao's "Backup Datenbank" unterscheiden sich

    Guten Tag,

    ich habe ein Database Backup mit phpmyadmin und die unkomprimiuerte .sql Datei ist 83 MB. Dann habe ich ein Backup aus dem Admin Backend der Contao gemacht (mithilfe von einer Erweiterung: [BackupDB] BackupDB Modul). Diese .sql Datei ist 393,4 MB gross. Wieso ist der unterschied so gross? Ist bei dem Backup mit phpadmin was schief gelaufen?

    Wenn mir jemand sagen könnte, welche Einstellungen man in phpmyadmin wählen soll, um ein richtiges und komplettes Backup zu machen, wäre ich sehr dankbar. In Contao Manual gibt's ein Screenshot für phpmyadmin (hier), der ist aber veraltet, das Interface von meinem phpmyadmin sieht anders aus und hat andere Einstellungen (den Screenshot habe ich angehängt).

    Danke.
    Angehängte Grafiken Angehängte Grafiken

  2. #2
    Contao-Urgestein Avatar von Kahmoon
    Registriert seit
    22.06.2009.
    Ort
    München
    Beiträge
    5.280

    Standard

    Mit und ohne Komprimierung vielleicht?

    Normal: PHPMyAdmin -> Datenbank anklicken -> Reiter Exportieren -> Standardvorgabe wählen -> OK drücken

  3. #3
    Contao-Nutzer
    Registriert seit
    01.11.2009.
    Beiträge
    35

    Standard

    Beide Dateien sind unkomprimiert, deswegen wundert es mich...

  4. #4
    Contao-Urgestein Avatar von Kahmoon
    Registriert seit
    22.06.2009.
    Ort
    München
    Beiträge
    5.280

    Standard

    Ein Backup aus dem Backend nimmt halt nur Contao-Tabellen mit...PHPMyAdmin alle. Vielleicht gibt es hier noch Fremdtabellen in der gleichen Datenbank.

  5. #5
    Contao-Urgestein Avatar von KATgirl
    Registriert seit
    31.03.2010.
    Ort
    Marburg
    Beiträge
    1.579
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Dann wäre aber das aus PHPmyAdmin das größere, doch das aus Contao ist fast viermal so groß, das kann nur was mit der Komprimierung oder ausgeschlossen Tabellen zu tun haben.
    - GitHub
    - Kontaktanfragen

    "Ein Lächeln ist die kürzeste Entfernung zwischen zwei Menschen." Victor Borge

  6. #6
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.612
    Partner-ID
    1081
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Die Erweiterung BackupDB kann so um die 10 MB-Datenbank sichern, was in vielen Installationen voll ausreicht. Ist die Datenbank so groß, wie bei Dir, dann wird die Sicherung durch Überschreiten der maximalen PHP-Laufzeit abgebrochen. Den Abbruch kann das Programm nicht melden, weil es von PHP einfach abgeschossen wird.
    Für Datenbanken dieser Größenordnung empfiehlt sich eine Sicherung über die SSH Kommandozeile im Hosting, oder mit Tools wie dem MYSQLDumper.

    Was sind das alles für Daten?
    In den Einstellungen kannst Du in einer Blacklist Datenbanktabellen angeben, deren Inhalte nicht mitgesichert werden sollen. Da ist z.B. der Suchindex, der ja jederzeit wieder hergestellt werden kann oder die User-Session und die Undo- und Versionsdaten. Wenn der EFG alle abgesendeten Formulare speichert, kann auch hier viel zusammenkommen, was im Notfall zum Aufsetzen eines gespeicherten Backups nicht unbedingt gebraucht wird.
    Bei mir habe ich meist folgende Tabellen in der Blacklist: tl_lock, tl_log, tl_search, tl_search_index, tl_session, tl_undo, tl_version

    Vielleicht bekommst Du dadurch das Backup auch mit BackupDB in den Griff.
    Zur Kontrolle sollte in der letzten Zeile in der SQL-Datei "# --- End of Backup ---" stehen, dann ist alles komplett durchgelaufen.

  7. #7
    Contao-Nutzer
    Registriert seit
    01.11.2009.
    Beiträge
    35

    Daumen hoch

    Vielen dank, do_while, für deine ausführliche Erklärung! Die hat mir sehr geholfen.

    Ich habe wirklich kein "# --- End of Backup ---" am ende der phpmyadmin .sql Datei gefunden.

    In der .sql Datei, die mit DBBackup Erweiterung gemacht wurde, hat "# --- End of Backup ---" und ist damit dann vollständig.

    Ich unterhalte mich jetzt mit Hosting Support, ob sie mir da weiterhelfen können und die Begrenzung bei phpmyadmin abschalten können.

    Auch danke für das Tipp mit Tabellen, die man nicht kopieren soll. Die nehmen wirklich immer unnötig viel Platz bei Backups...

    Meine Frage ist dann damit geklärt, danke nochmal ^^

  8. #8
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.942

    Standard

    Zitat Zitat von Selina Beitrag anzeigen
    Ich habe wirklich kein "# --- End of Backup ---" am ende der phpmyadmin .sql Datei gefunden.
    Das schreibt auch nur die DBBackup Erweiterung dort rein um zu zeigen, daß alles vollständig durchgelaufen ist.

  9. #9
    Contao-Nutzer
    Registriert seit
    01.11.2009.
    Beiträge
    35

    Standard

    Ah so echt? Kann man dann an irgendetwas erkennen, ob phpmyadmin die .sql Datei zu Ende geschrieben wurde?

  10. #10
    Contao-Nutzer
    Registriert seit
    01.11.2009.
    Beiträge
    35

    Standard

    Also, ich habe gecheckt, dass die phpmyadmin .sql Datei endet mit "tl_user_group" Tabelle, die als letzte auch stehen soll, wenn ich tl_version nicht für den export auswähle... also die Datei soll wirklich vollständig sein. Wundert mcih trotzdem, wieso der Unterschied zwischen zwei .sql Dateien so riesengross ist, aber ok... Ich probiere den cash und search index zu leeren und ein DBBackup durch die Erweiterung nochmal machen, um zu checken, wie groß die .sql Datei dann wird.

  11. #11
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.942

    Standard

    Die Backups könnten auch noch unterschiedlich groß sein weil

    * DROP TABLE IF EXISTS ...; CREATE TABLE Statements enthalten sind oder nicht (das darf aber nicht viel ausmachen)

    * Die INSERT Befehle für jede Zeile einzeln enthalten sind

    (a) INSERT INTO tabellenname (spaltennamen) VALUES (werte);

    oder

    (b) INSERT INTO tabellenname VALUES (werte);

    * Die INSERT Befehle für alle Zeilen zu einem zusammen gefasst wurden

    (c) INSERT INTO tabellenname VALUES (werte) (werte) (werte) ... (werte);

    Gerade der Unterschied zwischen (a) (besser lesbar/nachvollziehbar) und (c) (kompakter/schneller in der Ausführung, da weniger Statements) kann nicht unerheblich sein.

    Wie sieht die Backupdatei bei Dir denn bei den beiden Ansätzen jeweils aus?

  12. #12
    Contao-Nutzer
    Registriert seit
    01.11.2009.
    Beiträge
    35

    Standard

    In dem phpmyadmin Backup gib't mehrere

    INSERT INTO `tl_article`

    nacheinander.

    Sieht etwa so aus:
    Code:
    --
    -- Daten für Tabelle `tl_article`
    --
    
    INSERT INTO `tl_article` (`id`, `pid`, `sorting`, `tstamp`, `author`, `inColumn`, `title`, `alias`, `teaser`, `showTeaser`, `keywords`, `space`, `cssID`, `printable`, `published`, `start`, `stop`, `teaserCssID`) VALUES
    (1, 2, 128, 1212950799, 1, 'main', 'Приветствие', 'privetstvie', NULL, '', NULL, 'a:2:{i:0;s:0:"";i:1;s:0:"";}', 'a:2:{i:0;s:0:"";i:1;s:0:"";}', '', '1', '', '', ''),
    (2, 14, 128, 1212952492, 1, 'main', 'Гостевая книга', 'gostevaja-kniga', NULL, '', NULL, 'a:2:{i:0;s:0:"";i:1;s:0:"";}', 'a:2:{i:0;s:0:"";i:1;s:0:"";}', '', '1', '', '', ''),
    (3, 55, 128, 1213026441, 2, 'main', 'Анкета, описание, формы', 'anketa', NULL, '', NULL, 'a:2:{i:0;s:0:"";i:1;s:0:"";}', 'a:2:{i:0;s:0:"";i:1;s:0:"";}', '', '1', '', '', ''),
    (4, 18, 128, 1213019836, 2, 'main', 'Главная со ссылками', 'glavnaja-so-ssylkami', NULL, '', NULL, 'a:2:{i:0;s:0:"";i:1;s:0:"";}', 'a:2:{i:0;s:0:"";i:1;s:0:"";}', '', '1', '', '', ''),
    (5, 56, 128, 1213024421, 2, 'main', 'Атаки, перевоплощения, предметы', 'ataki-perevoploschenija-predmety', NULL, '', NULL, 'a:2:{i:0;s:0:"";i:1;s:0:"";}', 'a:2:{i:0;s:0:"";i:1;s:0:"";}', '', '1', '', '', ''),
    (6, 57, 128, 1213026017, 2, 'main', 'Замки принцесс', 'zamki-princess', NULL, '', NULL, 'a:2:{i:0;s:0:"";i:1;s:0:"";}', 'a:2:{i:0;s:0:"";i:1;s:0:"";}', '', '1', '', '', ''),
    (7, 59, 128, 1213027272, 2, 'main', 'Анкета, информация, формы', 'anketa-informacija-formy', NULL, '', NULL, 'a:2:{i:0;s:0:"";i:1;s:0:"";}', 'a:2:{i:0;s:0:"";i:1;s:0:"";}', '', '1', '', '', ''),
    (8, 60, 128, 1213040839, 2, 'main', 'Атаки, перевоплощения, предметы', 'ataki-perevoploschenija-predmety.8', NULL, '', NULL, 'a:2:{i:0;s:0:"";i:1;s:0:"";}', 'a:2:{i:0;s:0:"";i:1;s:0:"";}', '', '1', '', '', ''),
    (9, 61, 128, 1213042172, 2, 'main', 'Повседневная одежда', 'povsednevnaja-odezhda', NULL, '', NULL, 'a:2:{i:0;s:0:"";i:1;s:0:"";}', 'a:2:{i:0;s:0:"";i:1;s:0:"";}', '', '1', '', '', ''),
    (10, 62, 128, 1213087181, 2, 'main', 'Информация из книги фаната',
    Und so weiter.



    Contao's Erweiterung Backup sieht so aus:
    (scheint mir viel überscihtlicher zu sein)

    Code:
    #
    # Dumping data for table 'tl_article'
    #
    
    INSERT INTO `tl_article` VALUES ( 1, 1716, 64, 1415210202, 1, 'main', 'Приветствие', 'privetstvie', NULL, '', NULL, 'a:2:{i:0;s:0:"";i:1;s:0:"";}', 'a:2:{i:0;s:0:"";i:1;s:0:"";}', '', '', '', '', '', '', '', NULL, '' );
    INSERT INTO `tl_article` VALUES ( 2, 14, 128, 1212952492, 1, 'main', 'Гостевая книга', 'gostevaja-kniga', NULL, '', NULL, 'a:2:{i:0;s:0:"";i:1;s:0:"";}', 'a:2:{i:0;s:0:"";i:1;s:0:"";}', '', '1', '', '', '', '', '', NULL, '' );
    INSERT INTO `tl_article` VALUES ( 5243, 1735, 128, 1393879351, 1, 'main', 'Сейлор Мун - Цукино Усаги ссылки', 'sejlor-mun-cukino-usagi-ssylki', '', '', '', 'a:2:{i:0;s:0:"";i:1;s:0:"";}', 'a:2:{i:0;s:0:"";i:1;s:0:"";}', '', '1', '', '', 'a:2:{i:0;s:0:"";i:1;s:6:"circle";}', '', '', NULL, '' );
    Also verstehe ich es richtig, dass deine Erahnung wieso die Contao's Backup viel größer ist, richtig ist?

  13. #13
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.942

    Standard

    Zitat Zitat von Selina Beitrag anzeigen
    Also verstehe ich es richtig, dass deine Erahnung wieso die Contao's Backup viel größer ist, richtig ist?
    Der Unterschied ist ja der zwischen

    Code:
    INSERT INTO `tl_article` (`id`, `pid`, `sorting`, `tstamp`, `author`, `inColumn`, `title`, `alias`, `teaser`, `showTeaser`, `keywords`, `space`, `cssID`, `printable`, `published`, `start`, `stop`, `teaserCssID`) VALUES (), (),  ... ()
    also ein INSERT mit einmalig Spaltennamen und dann mehrfach den Values in Klammern
    und
    Code:
    INSERT INTO `tl_article` VALUES ();
    INSERT INTO `tl_article` VALUES ();
    INSERT INTO `tl_article` VALUES ();
    also wieder holt INSERT INTO `tl_article` VALUES, d.h. einmal den Platz von
    Code:
     (`id`, `pid`, `sorting`, `tstamp`, `author`, `inColumn`, `title`, `alias`, `teaser`, `showTeaser`, `keywords`, `space`, `cssID`, `printable`, `published`, `start`, `stop`, `teaserCssID`)
    gespart und je Zeile den Platz von
    Code:
    INSERT INTO `tl_article` VALUES
    zusätzlich beansprucht. Wieviel das unter dem Strich ausmacht hängt natürlich von der Anzahl der Records in Deinen Datenbanktabellen ab.

    Aber das war meine Idee.

    Ich mache meine Datenbankdumps immer direkt auf der Kommandozeile und kann daher zu BackupDB bzw. phpMyAdmin nicht allzuviel sagen.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •