Von MySQL 5.5 auf 5.7 umstellen gibt es Probleme mit Zugriffsberechtigung

  • Hallo,


    ich möchte meine Datenbank von 5.5 auf 5.7 umstellen.


    Dazu habe ich eine zweite Datenbank beim Hoster erstellt mit 5.7.

    Dann bin ich bei der Datenbank 5.5 rein gegangen und habe die Datenbank auf meinen Rechner Exportiert.

    Dann wollte ich die exportierte Datenbank in die neue Datenbank importieren.

    Beim Importieren kommt dann der Fehler:


    Ich kann damit nicht viel anfangen, nur dass da was von "keine Zugriffsberechtigungen" steht.

    Wie bekommt man den Zugriffsberechtigung?

    Gruß amp-flo

  • Das Problem ist, dass das exportierte Script die "alte" Datenbank versucht zu erstellen. Daher der Befehl create database if not exists. Das wird dir sicher aber dein Hoster als Sicherheitseinstellungen verboten haben.


    Mach Mal eine Kopie deines lokalen Scripts, damit du ein Backup hast und ändere mit Notepad o.ä. in dem Befehl create Database if not exists den Namen in den Hochkommata auf den Namen deiner neuen Datenbank in die du importieren willst. Vielleicht hilft schon das, weil der Befehl dann hoffentlich nicht ausgeführt wird, da die Datenbank schon besteht.


    Musst nur Mal gucken ob der Datenbank Name auch in anderen Teilen steht!

  • Ich kenne es so, dass man - je nach Hoster - zu einer neuen Datenbank einen neuen User und ein neues Passwort bekommt. Das wird - so ist es bei mir zumindest - direkt nach anlegen der Datenbank (in phpMyAdmin bspw.) angezeigt.

    Das hängt aber vom Hoster ab und muss nicht zwingend bei dir auch so sein, aber es hört sich so an. Entweder bekommt dein DB-User die Rechte für die Datenbank (der Hoster kann das auf jeden Fall) oder es gibt einen anderen User für die Datenbank.

    Wie verwaltest du die Datenbanken? phpMyAdmin oder übers Kontrollzentrum deines Hosters?

  • Hallo Miteinander,


    entschuldigt bitte, das ich mich jetzt erst melde.



    JohannesK

    Ich habe beim Hoster nachgefragt und aus Sicherheitsgründen wird es mir verboten. Aber dein Vorschlag war die Lösung. Ich habe den alten Namen der DB rausgenommen und den neuen Namen eingefügt. Schon klappte es. Nein, die DB bestand noch nicht.


    @AbRaXaS

    Ein Passwort zu der Datenbank habe ich beim Erstellen der DB vergeben müssen, aber kein User. Ich verwalte meine Daten über phpMyAdmin.


    j!-n

    Dein Vorschlag habe ich als erstes probiert, weil schön einfach. Aber leider funktionierte es nicht. Danach habe ich den Vorschlag von JohannesK ausprobiert und es funktionierte.


    Ich bedanke mich ganz herzlich bei euch allen, für den schnellen Support und den tollen Vorschlägen.

    Danke!


    Gruß amp-flo

  • Beide Vorschlage von Johannes und Chris bewirken dasselbe, nämlich das im Dump der Befehl zum Anlegen einer Datenbank entfernt/deaktiviert wird. Wenn Du ein Fehler bei Chris Vorschlag kam, istr vrmutlich noch ein use- Datenbase-Befehl dabei gewesen oder Du hast was falsch gemacht.

    Nächstes mal einfach den Dump direkt mit der richtigen Export-Funktion in phpMyAdmin machen (davon gibt es mehrere an unterschiedlichen Stellen). Dann stehen nur die Tabellen im Dump und nicht auch noch das Anlegen der Datenbank,

    Wie man richtig exportiet steht z.B. hier.

  • Jep, so ist es. Ich selbst machte vor ein paar Jahren bei einem Umzug diesen Fehler, und es dauerte ein wenig, bis ich herausfand, dass DB User bei Shared Hosting selten die Berechtigung haben, DB direkt anzulegen. Learning by doing. In phpMyAdmin in der linken Spalte auf die DB klicken, in der Mitte sollten dann alle Tabellen stehen. Dann oben auf Export. Oder aber Akeeba Backup (Option nur DB sichern) mit Kickstart nutzen, das funktioniert mittlerweile auch recht zuverlässig. Das war früher mal anders...