PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wozu ist der Befehl --opt eigentlich ? (SSH oder Telnet)


The Matrix
27.03.2002, 23:14
Hallo,

in der Beschreibung von VBulletin haben die beim MySQL Backup jetzt eine kleine Änderung drin:

mysqldump --opt -uUSERNAME -p databasename > /path/to/dump.sql

Ich habe nun auch mal den Befehl "--opt" ausprobiert, weiß jedoch nicht wozu er gut ist und was er eigentlich genau macht.

Wäre nett wenn mich Jemand mal etwas aufklären könnte.

Ich habe es mal getestet und habe festgestellt dass der Dump kleiner ist als wenn ich es ohne diesen Befehl mache. Müsste also ein Komprimirungsmechanismus sein oder ?

Mit freundlichen Grüßen
The Matrix

Afterburner
28.03.2002, 01:01
klingt nach ner optimierung, deswegen wohl auch opt
hast du schon mal bei www.php.net geschaut ? da ist eigendlich immer alles gut erklärt.

The Matrix
28.03.2002, 08:48
Hallo Afterburner,

werde mir dass mal heute Abend angucken. Dankeschön für den Link.

Mit freundlichen Grüßen
AJ

pogo
28.03.2002, 11:08
Hinweise zu MySQL Befehlen gibts vielleicht eher bei mysql.com ;)

--opt
Same as --add-drop-table --add-locks --all --extended-insert --quick --lock-tables
Mit freundlicher Unterstützung von mysqldump -h

Znaper
28.03.2002, 18:21
Der --opt Befehl packt alle Insertbefehle nach Möglichkeit in eine Zeile und veringert somit die größe des Dumps.
Desweiteren werden lock kommandos mit eingefügt, die die Tables während des zurückspielen eines Dumps sperrt und sogleich werden die DROP TABLE IF EXIST Kommandos mit eingefügt, das bereits bestehende Tables mit gleichem Namen zuvor gelöscht werden.


mfg Znaper

The Matrix
29.03.2002, 08:36
Hallo,

dankeschön Znaper für die ausführliche Erklärung.

Dann werde ich doch den Befehl benutzer da er sehr nützlich scheint :)

Mit freundlichen Grüßen
AJ

nookone
04.04.2002, 18:15
ich habe mal noch eine etwas andere frage: wie regelt ihr das mit euren backups?
ich meine.. macht ihr jeden tag eins?
überschreibt ihr immer das alte? oder speichert ihr sie nach datum?
was für eine strategie benützt ihr da?

würd mich mal interessieren :)...

The_Sisko
04.04.2002, 20:06
Zum Befehl: Unteranderem wird auch nicht alles in den RAM geschrieben, was auch ein wenig besser ist für größere DBs (wie meine *G*)

Backups:
- täglich in der Nacht (5 uhr)
- danach GZIP der Datei (move).
- Dateiname mit Datums Code
- 5:30 Uhr das Verzeichnis wird nach Dateien durchsucht, die älter als eine Woche sind und löscht diese.

Also habe ich immer 7 Tage Backups gezippt auf dem Server liegen ;)
Es leben CRONJOBS!

nookone
05.04.2002, 19:18
ehm.. darf ich noch fragen wie sowas funktioniert? ich nehm mal an per script.. ehm von wo krieg ich sowas auch? :)

The_Sisko
05.04.2002, 21:16
Here we go:
#!/bin/bash

# get day
DAY=$(/bin/date '+%Y.%m.%d-%H%M')

# Dump Database
/usr/bin/mysqldump --opt -hlocalhost -pPASSWORT -uUSERNAME DATENBANKNAME adminlog access announcement attachment avatar bbcode calendar_events customavatar forum forumpermission icon moderator poll pollvote post privatemessage profilefield replacement replacementset setting settinggroup smilie style subscribeforum subscribethread template templateset thread threadrate user userfield usergroup usertitle > /absoulter/pfad/zum/backup/verzeichnis/dump.$DAY.sql


# GZIP Database
/usr/bin/gzip -f /absoulter/pfad/zum/backup/verzeichnis/dump.$DAY.sql

diesen Code z.B. als exprt.sh abspeichern und per telnet oder cronjob ausführen.

The_Sisko
05.04.2002, 21:17
Das andere Script muß ich erst mal etwas aufräumen bevorich das poste.

nookone
06.04.2002, 07:42
wow geil :).

danke dir vielmals.. sehr nützlich :).

nookone
08.04.2002, 20:26
ehm.. vielleicht eine etwas peinliche frage ;).. ich habe nach sehr langem suchen immer noch nicht rausgefunden wie ich ein skript ausführe :(

kann mir das jemand sagen?
btw: kennt jemand eine faq-site wo man infos zu telnet findet? also befehle etc.? bevorzugt in deutsch :) aber english ist auch gut :).

Supernature
10.04.2002, 16:36
@The_Sisko vielen Dank dafür!
Wenn ich die Tabellennamen nicht einzeln angebe, wird die komplette Datenbank gedumpt, oder?

caillean
10.04.2002, 17:17
Original geschrieben von Supernature
@The_Sisko vielen Dank dafür!
Wenn ich die Tabellennamen nicht einzeln angebe, wird die komplette Datenbank gedumpt, oder?

Ja

Schorsch
12.02.2003, 05:04
Danke für das script The_Sisko.

Allerdings bekomme ich bei mir folgende Meldung wenn ich das script ausführe:

linux:/home/xxxxxxxx/xxxxx # sh exprt.sh
: command not found
: command not found
: command not found
: command not found
.sql: No such file or directory03.02.12-0457


trotzdem befindet sich eine sql datei im verzeichnis ??!!

Was ist da los ?

Gruß,
Schorsch

Harley
12.02.2003, 13:05
öhm weil ichs gerade lese,

lass das opt am besten weg, ich habe damit schon öffter erlebt, daß man das Dump dann nicht mehr einspielen kann.
Das muss aber auch ned unbedingt so sein, nur ein kleiner Hinweis von mir.

Cheffe
12.02.2003, 16:27
Kann es sein, dass man mit --opt 'nen 35MB Dump auf 20MB bekommt?

westi
18.03.2003, 23:31
hi,
kommt noch das script fürs löschen der alten files? :)