SSH MYSQLDUMP
Timur
- sonstiges
Hallo,
da bin ich wieder. Ich versuche gerade über PUTTY mit mysqldump meine Datenbanken zu sichern.
Nur das Problem ist mit der Verbindung zur Datenbank. Irgendwie klappt es nicht, folgendes habe ich immerwieder probiert.
mysqldump -u USER -p PWD table > backup.sql
mysqldump -h HOSTNAME -u USER -p PWD table > backup.sql
mysqldump -h HOSTNAME -u USER -p table > backup.sql
mysqldump --user=USER --password=PWD table > backup.sql
mysqldump --host=HOSTNAME --user=USER --password=PWD table > backup.sql
mysqldump --host=HOSTNAME --user=USER --password table > backup.sql
Leider klappt gar nichts von oben. Es kommt immer die Fehlermeldung:
Got error: 1045: Access denied for user: '...'
Ich bin jetzt auch total verwirrt. Ich weiß jetzt gar nicht was man mit dem host, user oder password gemeint ist? Muss ich da die gleichen Eingaben machen, so wie ich mich bei PUTTY angemeldet habe (da wird ja auch nach host, user und pwd gefragt) oder den Benutzername der Datenbank und das Passwort für die Datenbank? Host wäre ja der von meinem Provider?
Wie gesagt ich habe alles versucht aber irgendwie kommt die blöde Fehlermeldung.
Viele Grüße
Timur
Hello,
mysqldump --host=HOSTNAME --user=USER --password table > backup.sql
du gibst hier dem MySQL-Dump an mit welchen Einstellungen es den MySQL-Server erreicht. Der HOSTNAME legt dabei fest, WELCHEN MySQL-Server du meinst. Bei vielen Providern ist hier "localhost" die Angabe der Wahl. Alternativ schau mal bei deinem PHPMyAdmin oder in deinen Skripten nach, diese fordern die selben Einstellungen. Gleiches gilt für Benutzer und Passwort, es geht um die Datenbank.
MfG
Rouven
Hallo,
genau die einstellungen habe ich auch zuerst eingegeben. aber da hat es mir immer den fehler mit dem acces denied ausgegeben.
woran könnte es denn noch liegen?
gruß
timur
Hallo Rouven,
ich hatte die ganze Zeit einen Tippfehler gehabt.
wie macht man das eigentlich, wenn man fortlaufenden backups möchte?
Zum Beispiel will ich, heute, morgen ... die nächsten paar Tage Backups machen. Dabei würde ich gerne die Dateinamen in etwa so haben:
backup29032009_2215
backup30032009_2215
backup31032009_2215
backup01042009_2215
Das Skript kann ich mit einem CronJob jeden Tag um 22:15 Uhr starten, aber was ich nicht weiß wie ich die Dateinamen genauso benennen kann. Ich will nicht immer die gleiche Datei überschreiben.
Viele Grüße
Timur
[latex]Mae govannen![/latex]
Zum Beispiel will ich, heute, morgen ... die nächsten paar Tage Backups machen. Dabei würde ich gerne die Dateinamen in etwa so haben:
backup29032009_2215
backup30032009_2215
backup31032009_2215
backup01042009_2215
Besser:
backup20090329_2215
backup20090330_2215
backup20090331_2215
backup20090401_2215
dann klappt's auch mit der chronologischen Sortierung.
Cü,
Kai
Hallo,
Besser:
backup20090329_2215
backup20090330_2215
backup20090331_2215
backup20090401_2215
ja ok, aber was muss an den backup anhängen damit es klappt?
Gruß
Timur
Hi Timur,
ja ok, aber was muss an den backup anhängen damit es klappt?
Einen entsprechenden Ausdruck, der das gewünschte Datum erzeugt, das dürfte am einfachsten mit date
gehen, siehe man date
.
#!/bin/bash
FILE=/home/myuser/backup/backup-`date +%Y%m%d-%H%M`.sql.gz
/usr/bin/mysqldump --user=mysqluser --password=mysqlpassword databasename | gzip > $FILE
OLDFILE=/home/myuser/backup/backup-`date -d "30 days ago" +%Y%m%d-%H%M`.sql.gz
if [ -f $OLDFILE ]; then
rm $OLDFILE
fi
So sieht das z.B. bei mir aus. Löscht dann der Bequemlichkeit halber direkt noch das 30-Tage alte Backup, sofern dieses vorhanden ist. Muss dafür halt nur täglich zur selben Uhrzeit laufen, also z.B. mit folgendem Crontab-Eintrag:
53 23 * * * /home/myuser/bin/make-backup.sh
Viele Grüße,
~ Dennis.
Hallo,
genau die einstellungen habe ich auch zuerst eingegeben. aber da hat es mir immer den fehler mit dem acces denied ausgegeben.
woran könnte es denn noch liegen?
Wenn "access denied" kommt, heißt das noch lange nicht, dass der Hostname stimmt. Es könnte also liegen an:
hostname, benutzername, passwort.
Hotte
echo $begrüßung;
da bin ich wieder. Ich versuche gerade über PUTTY mit mysqldump meine Datenbanken zu sichern.
Eine Kennung unter MySQL wird immer konfiguriert als Kombination von einem Benutzernamen, einem Passwort und der Angabe des Hosts, von dem aus ein Connect erfolgen darf. Wenn deine Kennung beispielsweise nur als "localhost" konfiguriert ist, kannst du damit nicht von fern zugreifen. The MySQL Access Privilege System
mysqldump -h HOSTNAME -u USER -p PWD table > backup.sql
Für das Passwort gibt es eine Besonderheit beim Notieren als Parameter: Es muss ohne Leerzeichen nach dem -p folgen. Using Options on the Command Line
(Der Hostname -h ist hier natürlich der des MySQL-Servers. mysqldump muss ja wissen, wo es sich hinverbinden soll.)
echo "$verabschiedung $name";