mysql-dump
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| mysql-dump [2021-10-06 10:10:11] – [MySQL-Dump] manfred | mysql-dump [2024-06-26 16:45:59] (aktuell) – [Fehler] manfred | ||
|---|---|---|---|
| Zeile 11: | Zeile 11: | ||
| # mysqldump --order-by-primary -Ac > all_databases.sql | # mysqldump --order-by-primary -Ac > all_databases.sql | ||
| - | INNODB-Dump mit " | + | INNODB-Dump mit "%%--single-transaction%%" ziehen: |
| Es dürfen diese Aufrufe während der Dump geschrieben wird, | Es dürfen diese Aufrufe während der Dump geschrieben wird, | ||
| nicht ausgeführt werden: | nicht ausgeführt werden: | ||
| Zeile 23: | Zeile 23: | ||
| # mysqldump --skip-add-drop-table -Ktnc | # mysqldump --skip-add-drop-table -Ktnc | ||
| - | komplette Optionen, **mit** Tabelle löschen: | + | komplette Optionen, **ohne** Tabelle löschen: |
| # mysqldump --set-gtid-purged=OFF --opt --triggers --routines --skip-add-drop-table --order-by-primary --single-transaction --skip-extended-insert -QEc [Datenbankname] [Tabellenname] | gzip -1 > Datenbankname_Tabellenname.sql.gz | # mysqldump --set-gtid-purged=OFF --opt --triggers --routines --skip-add-drop-table --order-by-primary --single-transaction --skip-extended-insert -QEc [Datenbankname] [Tabellenname] | gzip -1 > Datenbankname_Tabellenname.sql.gz | ||
| - | komplette Optionen, **ohne** Tabelle löschen: | + | komplette Optionen, **mit** Tabelle löschen: |
| # mysqldump --set-gtid-purged=OFF --opt --triggers --routines --add-drop-table --order-by-primary --single-transaction --skip-extended-insert -QEc [Datenbankname] [Tabellenname] | gzip -1 > Datenbankname_Tabellenname.sql.gz | # mysqldump --set-gtid-purged=OFF --opt --triggers --routines --add-drop-table --order-by-primary --single-transaction --skip-extended-insert -QEc [Datenbankname] [Tabellenname] | gzip -1 > Datenbankname_Tabellenname.sql.gz | ||
| - | ==== Fehler | + | ==== MySQLDump |
| - | sollte soein Fehler auftreten: | ||
| - | mysqldump: Got error: 1105: Percona-XtraDB-Cluster prohibits use of LOCK TABLE/FLUSH TABLE < | ||
| - | dann muß man dem '' | + | === Fehler === |
| - | | + | |
| + | wenn dieser Fehler auftritt: | ||
| + | > mysqldump: Got error: 1105: Percona-XtraDB-Cluster prohibits use of LOCK TABLE/FLUSH TABLE < | ||
| + | |||
| + | dann liegt das daran: | ||
| + | > echo "SHOW VARIABLES WHERE Variable_name LIKE ('pxc_strict_mode');" | mysql -t | ||
| + | | ||
| + | | Variable_name | ||
| + | +-----------------+-----------+ | ||
| + | | pxc_strict_mode | ENFORCING | | ||
| + | +-----------------+-----------+ | ||
| + | |||
| + | das ist die falsche vorgehensweise: | ||
| + | > echo "SET GLOBAL pxc_strict_mode=' | ||
| + | |||
| + | das wäre dann zu tun (eine dieser beiden zusätzlichen Optionen verwenden): | ||
| # mysqldump ... --single-transaction | # mysqldump ... --single-transaction | ||
| + | # mysqldump ... --no-lock-tables | ||
| + | |||
| + | mal ausprobieren: | ||
| + | SET unique_checks=0; | ||
| + | SET foreign_key_checks = 0; | ||
| Zeile 47: | Zeile 65: | ||
| In diesem Beispiel soll eine Datenbank " | In diesem Beispiel soll eine Datenbank " | ||
| die die gleiche Tabellenstruktur wie die " | die die gleiche Tabellenstruktur wie die " | ||
| + | |||
| + | <file bash / | ||
| + | #!/bin/sh | ||
| + | |||
| + | VERSION=" | ||
| + | |||
| + | # / | ||
| + | # / | ||
| + | # / | ||
| + | # / | ||
| + | # / | ||
| + | |||
| + | while [ " | ||
| + | case " | ||
| + | -h) | ||
| + | HOST=${2} | ||
| + | shift | ||
| + | ;; | ||
| + | -p) | ||
| + | PORT=${2} | ||
| + | shift | ||
| + | ;; | ||
| + | -t) | ||
| + | TABELLEN=${2} | ||
| + | shift | ||
| + | ;; | ||
| + | -d) | ||
| + | DATENBANKEN=${2} | ||
| + | shift | ||
| + | ;; | ||
| + | -l) | ||
| + | LEER=${2} | ||
| + | shift | ||
| + | ;; | ||
| + | -h) | ||
| + | echo " | ||
| + | HILFE: | ||
| + | ${0} [Option] | ||
| + | DB-Host: -h [Hostname] | ||
| + | DB-Port: -p [Port] | ||
| + | Tabellen vorher löschen: -t löschen | ||
| + | Datenbanken: | ||
| + | ohne Daten: -l | ||
| + | |||
| + | ${0} -p 3306 -d \" | ||
| + | ${0} -p 3306 -t löschen -d \" | ||
| + | ${0} -p 3306 -l -d \" | ||
| + | ${0} -h 192.168.1.100 -p 3306 -d \" | ||
| + | " | ||
| + | exit 1 | ||
| + | ;; | ||
| + | *) | ||
| + | if [ " | ||
| + | echo "Der Parameter ' | ||
| + | fi | ||
| + | shift | ||
| + | ;; | ||
| + | esac | ||
| + | done | ||
| + | |||
| + | if [ " | ||
| + | # | ||
| + | HOST=" | ||
| + | fi | ||
| + | |||
| + | if [ " | ||
| + | echo "${0} -h" | ||
| + | echo "${0} -p 3306 ..." | ||
| + | exit 11 | ||
| + | fi | ||
| + | |||
| + | if [ " | ||
| + | LEER=" | ||
| + | fi | ||
| + | |||
| + | if [ " | ||
| + | DROP_TABLE=" | ||
| + | else | ||
| + | DROP_TABLE=" | ||
| + | fi | ||
| + | |||
| + | DBS=" | ||
| + | do | ||
| + | echo -n "-B ${D_B} " | ||
| + | done)" | ||
| + | |||
| + | mysqldump -h ${HOST} -P ${PORT} --set-gtid-purged=OFF --opt --triggers --routines ${DROP_TABLE} --order-by-primary --single-transaction --skip-extended-insert -QEc ${LEER} ${DBS} | ||
| + | </ | ||
/home/http/wiki/data/attic/mysql-dump.1633515011.txt · Zuletzt geändert: von manfred
