Sicherung meiner MySQL-Datenbank
-
Hallo,
ich möchte gerne meine MySQL-Datenbank sichern und habe daher ein wenig bei google geschaut.
Schließlich bin ich hierauf gestossen:
mysqldump -u Username -p --opt Datenbankname > datensicherung.sqlLeider erhalte ich bei Ausführung des Befehls stets folgende Fehlermeldung:
mysqldump: Got error: 1044: Access denied for user 'Username'@'localhost' to database 'Datenbankname' when using LOCK TABLESIst hier das Problem, dass ich root sein muss, um die Datenbank zu sichern?
Falls ja, gibt es Alternativen, um die DB auch als "normaler" User zu sichern?Grüße
-
Hallo,
vielleicht fehlen dir die Rechte für den Befehl? Schau mal im MySQL Handbuch was du da für Optionen hast.
Alternativ kannst du deine Datenbank auch über den Mysqladministrator recht schnell sichern.
-
bin mir nicht ganz sicher, aber bei der verkürzten Schreibweise (-u)
steht da nicht der Benutzername direkt dahinter (ohne Leerzeichen)mysqldump -uUsername ...
-
Nein daran liegt es nicht
-u uname
beim Passwort ist es
-ppasswort
Die Antwort:
Fehhlermeldung sagt ja schon alles.
Access denied for user 'Username'@'localhost' to database 'Datenbankname' when using LOCK TABLESZugriff für den user nicht erlaubt. Dieser User darf die Datenbank nicht sperren.
LOCK TABLES.mysqldump sperrt die Tabelle damit keine Änderungen während der Sicherung gemacht werden können sonst würde ja die Sicherung nichts bringen.
Der User hat eben keine Rechte um die Tabelle zu sperren.
Man muss nicht root sein sondern nur dem User diese Rechte geben. Geht das in diesem Fall nicht weil es ein Webspace ist dann liefern die normalerweise etwas über eine Webseite mit. Dabei werden einfach nur alle Daten ausgelesen und SQL-Querys erzeugt.
Mehr macht aber mysqldump auch nicht.
-
Damit es funktioniert muss bestimmt Lock_tables_priv auf "Y" stehen, richtig?
-
JA.