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.sql

    Leider 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 TABLES

    Ist 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 TABLES

    Zugriff 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.


Anmelden zum Antworten