Page 1 of 1

Welche Optionen sollen in mysqldump verwendet werden ?

Posted: 2004-10-27 07:38
by torti0013
Hallo,

mir sind ein paar Optionen nicht klar (hab auch schon im Handbuch geschaut).

Code: Select all

mysqldump --opt usr_web2_1 -pPASSWORT  > ${ZIEL}/usr_web2_1_${NAME1}_${NAME2}.sql 
Hier wird ja mit dem Parameter --opt die Datenbank geschloßen usw. (allerdings wird auch nur eine Datenbank gesichert) diese Variante habe ich auch schon oft in den Foren gesehen.

Wenn ich aber einen kompletten Dump machen möchte würde dies so aussehen:

Code: Select all

mysqldump --all-databases -pPASSWORT  > ${ZIEL}/datenbank_${NAME1}_${NAME2}.sql
Wie sieht es hier aus, wird mit dieser Variante auch alles ordnungsgemäß geschloßen oder soll hier die Option --opt verwendet werden.

Vielen Dank mal.

Re: Welche Optionen sollen in mysqldump verwendet werden ?

Posted: 2004-10-27 21:31
by oxygen
Optionen können kombiniert werden...

mysqldump --all-databases --opt --quote-names | bzip2 -c > dump.sql.bz2

könnte man z.B. verwenden. --opt sollte man auf jeden Fall verwenden.

Re: Welche Optionen sollen in mysqldump verwendet werden ?

Posted: 2004-10-28 07:36
by torti0013
@øxygen
für was steht die option "--quote-names " habe ich bei der anleitung von mysqldump nicht gefunden ?


@all
ist vielleicht eine blöde frage, aber es ist nicht klar erklärt.

das zurückspielen einer datenbank funktioniert mit

Code: Select all

mysql datenbank < datensicherung.sql
die ist aber eben nur eine und nicht die komplette. wenn ich also die ganze datenbank mit der option -all usw. dumpe habe ich z.b. ein file mit dem namen datenbank.sql.

wenn ich nun alles zurückspielen will, haben ich ja keinen datenbanknamen z.b. nach einer neuinstallation oder einem crash. es gibt dann kein usr_web2_1 oder so etwas zumal ich ja alles auf einmal einspielen kann.
wie funktioniert dies dann ?

oder hab ich was falsch verstanden ?

danke

es funktioniert nicht

Posted: 2004-11-04 09:32
by torti0013
hallo,

vermutlich mache ich was falsch.

wenn der server aus irgend einem grund neu aufgesetzt werden muß gibt es keine datenbank und auch logischerweise nicht die entsprechenden verzeichnisse in mysql/data oder so (weis es gerade nicht aus dem kopf).

wenn ich nun einen kompletten dump erstellt habe mit der option

Code: Select all

mysqldump --all-databases -pPASSWORT  > /backup/datenbank.sql
habe ich einen dump von allen datenbanken (einschl. confixx).

so, wenn nun der server neu augfesetzt werden muß, sollte es ja ohne das die datenbanken angelegt sind möglich sein den dump zurück zu spielen.

hierfür verwende ich dann

Code: Select all

mysql --all-database < datensicherung.sql 
hier kommt dann das irgendwelche tabellen z.b. von confixx vorhanden sind. dabei habe ich testweise alles datenabnken und verzeichnisse gelöscht.

mir ist auch nicht ganz klar ob wircklich alle datenbanken und verzeichnisse beim zurück spielen angelegt werden. ist danach alles zu 100% wieder so wie es war ?

wie sieht es mit den berechtigungen der einzlenen user aus, die die datenbanken erstellt haben ?

vielleicht kann mir jemand meine fragen beantworten.

danke.

Re: Welche Optionen sollen in mysqldump verwendet werden ?

Posted: 2004-11-04 22:00
by oxygen
Im ersten Aufruf fehlt das --opt (und dementsprechend --add-drop-table)
zurückspielen geht einfach mit mysql < dump.sql

Die Berechtigungen bleiben, da sie in der DB mysql gespeichert werden und die mit kopiert wird.

werde es versuchen

Posted: 2004-11-05 07:32
by torti0013
sichere jetzt die datenbank mit

Code: Select all

mysqldump --all-databases-opt -pPASSWORT  > /backup/datenbank.sql
lösche dann mal die ganzen datenbanken und spiele es dann wieder mit

Code: Select all

mysql < datenbank.sql 
ein.

hoffentlich klappt es.

danke mal

Re: werde es versuchen

Posted: 2004-11-05 08:51
by oxygen
torti0013 wrote:sichere jetzt die datenbank mit

Code: Select all

mysqldump --all-databases-opt -pPASSWORT  > /backup/datenbank.sql
lösche dann mal die ganzen datenbanken und spiele es dann wieder mit

Code: Select all

mysql < datenbank.sql 
ein.

hoffentlich klappt es.
Ne. So werden Optionen nicht kombiniert. das Müsste heißen:
mysqldump --all-databases --opt ...

(s.o.)

Re: Welche Optionen sollen in mysqldump verwendet werden ?

Posted: 2004-11-05 14:45
by Joe User

Code: Select all

mysqldump -a -c -i --allow-keywords --delayed-insert --opt -A > /backup/datenbank.sql

Re: Welche Optionen sollen in mysqldump verwendet werden ?

Posted: 2004-11-06 15:01
by torti0013
Super hat alles geklappt, hab die Sicherung mit

Code: Select all

mysqldump -a -c --allow-keywords --delayed-insert --opt -A -pPASSWORT > /backup/datenbank.sql
erstellt und danach alles Verzeichnisse in /var/lib/mysql gelöscht.

Den Dump habe ich dann wieder mit

Code: Select all

mysql < datenbank.sql
eingespielt. Es wurde alles erstellt und Confixx funktionerte nach einem rcmysql restart auch wieder.

Für was sollte die Option -i sein, habe nicht gefunden und verwenden konnt ich diese auch nicht.

Eine letzte Frage noch: Funktioniert diese Methode auch noch wenn die Datenbank mal 300 MB oder mehr hat ?

Danke