Keine Rechte auf phpmyadmin

  • Hallo zusammen,

    ich bin Anfänger hier und habe ein Problem mit phpmyadmin. Ich habe mir im WCP eine DB mitsamt Benutzer welcher alle Rechte besitzt erstellt.

    Allerdings habe ich dann beim aufrufen KEINE Rechte auf phpmyadmin und kann somit weder die Datenbank bearbeiten noch irgendwelche anderen Befehle ausführen.

    Hoffe ihr könnt mir weiterhelfen.


    Danke im voraus und Viele Grüße

    Lars


    Tarif: Netcup Webhosting 1000 SE

  • Hallo Zusammen,


    ich habe dasselbe Problem, welches ich hier kurz schildern möchte:


    Ich habe mir vor wenigen Monaten ein Contao Premium Theme von Eclipse gekauft und Contao installiert. Danach begann ich über das Contao-Backend mit der Contentpflege. Seit ca.14 Tagen komme ich nicht mehr auf meine Seite bzw. in das Backend. Als Fehlermeldung wird mir in der log-Datei u.a. folgendes ausgegeben:

    Access denied for user '' localhost (using password: NO)


    Meine erste Vermutung war, dass sich irgendwas im WCP mehr oder weniger von selbst verstellt hat. Ich habe die den Dokumentenstamm in den Hosting-einstellungen kontrolliert, also ob der noch auf das Unterverzeichnis web meiner Contao-Installation steht. Weiterhin auch, ob die SSL/TLS-Unterstützung aktiviert ist.Dann habe ich noch in den PHP-Einstellungen für meine Domain den Listeneintrag für open_basedir überprüft. Gewählt ist (beginnend mit {WEBSPACEROOT}.


    Zu guter Letzt habe ich mir noch einmal die Datenbankeinstellungen angeschaut. Dafür habe ich mich bei Netcup im WCP angemeldet und phpMyAdmin aufgerufen. Wenn ich dann unter dem Reiter Datenbanken gehe, wird mir der Name der Datenbank, die Kollation und Aktion angezeigt. Über dieser Liste steht in roter Schrift: Keine Rechte


    Und unter dem Feld Aktion ist aufgelistet "Rechte überprüfen". Klicke ich darauf, dann gelange ich zur Seite Rechte und dort steht über die ganze Seite "Keine Rechte"


    Das dürfte dann entweder eine falsche Einstellung meinerseits im Plesk sein oder eine Fehlkonfiguration des Hosters oder?

    Ich habe nur einen Datenbankbenutzer.


    Irgendjemand eine Idee?


    VG

  • Access denied for user '' localhost (using password: NO)

    Das kann so eigentlich gar nicht funktionieren. Da solltest du nochmal die DB-EInstellungen in deinem Script prüfen.

    Zum einen scheint dort kein Username hinterlegt zu sein (""), zum anderen versucht die Webseite sich mit localhost zu verbinden.

    Localhost würde bedeuten, die Webseite läuft auf demselben Server wie die Datenbank. In den Netcup Webhosting-Tarifen sind jedoch Web- und DB-Server getrennt. Die korrekte Adresse des Datenbank-Servers findest du im Plesk/WCP in der Datenbank-Rubrik.


    Die phpMyAdmin-Fehlermeldung (keine Rechte) wirkt etwas seltsam. Hier ggf. noch mal den Datenbank-User prüfen. Ggf. einen neuen User zum Prüfen anlegen und dabei auch auf die Zugriffsrechte achten. Die 3 Zugriffseinstellungen wie hier zu sehen gilt es zu kontrollieren und ggf. zu erweitern: https://www.netcup-wiki.de/wik…osting#Benutzerverwaltung

  • Das kann so eigentlich gar nicht funktionieren. Da solltest du nochmal die DB-EInstellungen in deinem Script prüfen.

    Zum einen scheint dort kein Username hinterlegt zu sein (""), zum anderen versucht die Webseite sich mit localhost zu verbinden.

    Localhost würde bedeuten, die Webseite läuft auf demselben Server wie die Datenbank. In den Netcup Webhosting-Tarifen sind jedoch Web- und DB-Server getrennt. Die korrekte Adresse des Datenbank-Servers findest du im Plesk/WCP in der Datenbank-Rubrik.


    Die phpMyAdmin-Fehlermeldung (keine Rechte) wirkt etwas seltsam. Hier ggf. noch mal den Datenbank-User prüfen. Ggf. einen neuen User zum Prüfen anlegen und dabei auch auf die Zugriffsrechte achten. Die 3 Zugriffseinstellungen wie hier zu sehen gilt es zu kontrollieren und ggf. zu erweitern: https://www.netcup-wiki.de/wik…osting#Benutzerverwaltung

    Vielen Dank für deine Tipps. In welchem Script soll ich das prüfen? Ich sollte vielleicht erwähnen, dass kein Entwickler bzw. kein DB-Administrator bin. Wo kann ich einstellen, dass die DB nicht auf localhost gesucht wird? Wenn auf dem Webhostingserver unter localhost kein kein Datenbankserver läuft, dann muss ich doch irgendwo einstellen, dass die DB auf der IP-Adresse des Webservers sucht. Dies hattest du doch damit gemeint oder?

  • Das kann so eigentlich gar nicht funktionieren. Da solltest du nochmal die DB-EInstellungen in deinem Script prüfen.

    Zum einen scheint dort kein Username hinterlegt zu sein (""), zum anderen versucht die Webseite sich mit localhost zu verbinden.

    Localhost würde bedeuten, die Webseite läuft auf demselben Server wie die Datenbank. In den Netcup Webhosting-Tarifen sind jedoch Web- und DB-Server getrennt. Die korrekte Adresse des Datenbank-Servers findest du im Plesk/WCP in der Datenbank-Rubrik.


    Die phpMyAdmin-Fehlermeldung (keine Rechte) wirkt etwas seltsam. Hier ggf. noch mal den Datenbank-User prüfen. Ggf. einen neuen User zum Prüfen anlegen und dabei auch auf die Zugriffsrechte achten. Die 3 Zugriffseinstellungen wie hier zu sehen gilt es zu kontrollieren und ggf. zu erweitern: https://www.netcup-wiki.de/wik…osting#Benutzerverwaltung

    Der User ist ist der Datei parameters.yml von Contao hinterlegt. Auch stimmen dort

    database_host: '10.35.46.146'

    database_port: 3306

    database_user: k116047_kalle

    database_password:

    database_name:

  • Richtig, mit Script meinte ich deine Contaoinstallation. Allerdings kenne ich mich selbst mit dieser Software nicht weiter aus, aber es wirkt so als ob Contao die hinterlegte DB-Config nicht verwendet - anders kann ich mir deine Fehlermeldung nicht erklären (kein User, kein Password und eben localhost statt 10.35.46.146).


    Du könntest auch mal in die Logs vom Webserver schauen, vor allem in die Error-Logs. Ggf. bietet Contao selbst auch noch zus. Logs an, wäre dann auch einen Blick wert.


    Logs/Protokolle: https://www.netcup-wiki.de/wik…nel_Webhosting#Protokolle

    Oder eben direkt auf Dateiebene unter /Logs/domainname/error*, glaube ich.

  • Ich seh das auch so, dass die hinterlegte DB-Config nicht verwendet wird. Nicht weil Contao grundsätzlich die hinterlegte Konfiguration nicht verwenden würde. Sondern eher (meine Meinung) deshalb, weil das in einer YAML-Datei (parameters.yml) hinterlegt ist. Die DB-Config wird zwar im normalen Installationsprozess meist automatisch in diese Datei eingetragen, dabei geht normalerweise auch nichts schief. Aber man kann sie eben auch manuell eintragen und dabei eben leicht Fehler machen, indem man z.B. für die Einrückung einen oder mehrere Tabulatoren benutzt anstatt der von YAML vorgeschriebenen Leerzeichen, das ist nun mal leider eine wenig fehlertolerante Syntax. Ich will jetzt nicht unterstellen, dass hier zwingend manuell etwas falsch eingetragen bzw eingerückt wurde oder nachträglich beim Editieren irgendwas verrutscht ist, aber es liegt m.E. schon relativ nahe. Dagegen spricht allerdings, dass die Installation wohl eine ganze Zeit lang problemlos funktioniert haben muss und dann plötzlich nicht mehr, ohne dass etwas an der Konfigurationsdatei manuell geändert wurde. Alles ein wenig mysteriös, ich hatte sowas mit Contao noch nie, auch nicht hier bei netcup.


    Aber manchmal geschehen hier im Webhosting auch schon mal seltsame Dinge in letzter Zeit. Im Zusammenhang mit dem Fall hier habe ich mir letztens nochmal meine PHP-Einstellungen für eine Subdomain anschauen wollen und dabei versehentlich die Einstellungen für die Domain selbst angeklickt, die ich noch gar nicht nutze. Also war da für open_basedir die Defaulteinstellung drin. Als ich es gemerkt habe, habe ich einfach in den PHP-Einstellungen oben die Subdomain ausgewählt und habe da dann plötzlich ebenfalls die Defaulteinstellung angezeigt bekommen, obwohl ich für die Installation von Contao hier zwingend die andere Einstellmöglichkeit irgendwann eingestellt haben muss, weil Contao mit dem Default gar nicht installierbar und auch nicht lauffähig ist. Irgendwas scheint mir da nicht ganz hasenrein zu sein, was aber mit der DB-Config Problematik hier wohl eher nichts zu tun hat.

  • Ich kann zwar immer noch nicht wirklich nachvollziehen, wie du auf die Seite mit den Rechten kommst, aber vielleicht geht das ja auch nur so, wenn man eben keine Rechte hat. Jedenfalls, solange du keine Rechte hast, die Datenbank in irgendeiner Form zu bearbeiten, also z.B. keine Rechte für SELECT, INSERT und sonstige "normale" Datenbankoperationen hast, kann natürlich nichts funktionieren. Hast du das, was DerRené weiter oben geschrieben hat bzgl Änderung der Rechte im letzten Absatz, schon probiert? Falls das auch nicht klappt, ist das selbstverständlich was für den Support. Ich würde mich dann an deiner Stelle gegenüber dem Support gar nicht erst auf Contao beziehen, sondern nur auf phpMyAdmin, denn dafür sind sie definitiv zuständig, bei Contao können sie die Arme heben.


    Allerdings scheint der Support ja die Rechte bzgl phpMyAdmin schon einmal geprüft und für in Ordnung befunden zu habe, was mich dann doch einigermaßen ratlos zurücklässt. Wenn du es aufrufst hast du keine Rechte und der Support sagt, dass die Rechte alle korrekt sind. Kannst du eventuell einen Screenshot machen von der Seite, bei der du auf "Rechte überprüfen" klickst und auch von der Seite, die nach dem Klick angezeigt wird?

  • Vielen Dank für deine Rückmeldung!


    Ich habe dir mal die unter dem WCP aufgeführte Protokollübersicht beigefühgt. Ich kann damit nicht soviel anfangen. OK hier werden mir Zugriffe, Warnungen und auch Fehler angezeigt. Wer versucht denn da auf die Seiten zuzugreifen? Die Error-Meldungen kann ich mir nicht erklären.

  • Ich kann zwar immer noch nicht wirklich nachvollziehen, wie du auf die Seite mit den Rechten kommst, aber vielleicht geht das ja auch nur so, wenn man eben keine Rechte hat. Jedenfalls, solange du keine Rechte hast, die Datenbank in irgendeiner Form zu bearbeiten, also z.B. keine Rechte für SELECT, INSERT und sonstige "normale" Datenbankoperationen hast, kann natürlich nichts funktionieren. Hast du das, was DerRené weiter oben geschrieben hat bzgl Änderung der Rechte im letzten Absatz, schon probiert? Falls das auch nicht klappt, ist das selbstverständlich was für den Support. Ich würde mich dann an deiner Stelle gegenüber dem Support gar nicht erst auf Contao beziehen, sondern nur auf phpMyAdmin, denn dafür sind sie definitiv zuständig, bei Contao können sie die Arme heben.


    Allerdings scheint der Support ja die Rechte bzgl phpMyAdmin schon einmal geprüft und für in Ordnung befunden zu habe, was mich dann doch einigermaßen ratlos zurücklässt. Wenn du es aufrufst hast du keine Rechte und der Support sagt, dass die Rechte alle korrekt sind. Kannst du eventuell einen Screenshot machen von der Seite, bei der du auf "Rechte überprüfen" klickst und auch von der Seite, die nach dem Klick angezeigt wird?

    Ich gehe im WCP links unter Datenbanken, dann auf phpmyAdmin, dann oben auf den Server-Link ([Blockierte Grafik: https://a2e91.webhosting.systems/domains/databases/phpMyAdmin/themes/dot.gif]Server: 10.35.46.146:3306) und dann auf den Reiter Datenbanken und dann kommt die angehängte Seite


    Ich probiere jetzt mal eure Tipps aus und melde mich wieder

  • Ich gehe im WCP links unter Datenbanken, dann auf phpmyAdmin, dann oben auf den Server-Link ([Blockierte Grafik: https://a2e91.webhosting.syste…phpMyAdmin/themes/dot.gif]Server: 10.35.46.146:3306) und dann auf den Reiter Datenbanken und dann kommt die angehängte Seite


    Ich probiere jetzt mal eure Tipps aus und melde mich wieder

    Ok, den Weg zu deinem Screen kann ich hier zwar nicht nachvollziehen, bin jetzt aber trotzdem auf anderem Weg dahin gekommen. In phpMyAdmin erst links oben auf das Haussymbol (Startseite) und dort dann oben im Menü auf Datenbanken. Da steht bei mir ebenfalls "Keine Rechte". Das ist also normal, da geht es unter anderem um die Rechte aus phpMyAdmin eine neue Datenbank anzulegen. Das geht aber nur über Plesk, direkt in phpMyAdmin hat man im Webhosting nicht die Rechte dazu. Insofern - und da auch der Support dieser Meinung war - müssen wir das wohl nicht weiterverfolgen.


    Bleibt also herauszufinden, warum dein Contao nicht die hinterlegten DB-Zugangsdaten benutzt. Da wäre mein heißester Tipp nach wie vor, die Syntax der parameters.yml akribisch zu prüfen. Also ob z.B. alle Einrückungen nur aus Leerzeichen bestehen, Tabu-latoren sind wie der Name schon sagt :Dabsolut "TABU". Und auch ob alle eingerückten Zeilen der selben Ebene exakt die gleiche Anzahl Leerzeichen eingerückt sind. YAML mag praktisch sein für automatische Erzeugung einer Konfig-Datei. Ich muss aber sagen, meine Konfig-Dateien in OS/2 aus den 90er Jahren, eine Erweiterung der Windows ini-Dateien, waren vor 30 Jahren wesentlich fehlertoleranter als das. Fällt aber auch nicht schwer mehr Fehlertoleranz zu haben als gar keine ;).


    Falls es das nicht ist, bleibt wohl fast nur noch, dass PHP auf die Datei wegen open_basedir nicht zugreifen darf und Contao in dem Fall keine vernünftige Fehlermeldung liefert bzw die Fehlerbehandlung "suboptimal" ist (Frei nach dem Motto: Keine parameters.yml? Da nehmen wir doch einfach localhost und einen leeren Benutzernamen ohne Passwort als Zugangsdaten) Das mag ich aber nicht glauben, ich versuche das mal an einer Testinstallation nachzustellen.

  • Da die Config eine Yaml-Datei zu sein scheint und diese, wie tab bereits deutlich machte, sehr fehleranfällig sind:

    http://www.yamllint.com/

    Damit könntest du die Syntax zumindest prüfen lassen (Anmerkung: Kennwörter würde ich beim Prüfen auf einer fremden Page vorher schwärzen ;))


    Ansonsten wirds dann bald echt schwierig... mit einer anderen DB und/oder einem anderen DB-User testen. Oder mal ein einfaches PHP-Script den Datenbankzugriff testen - wenn es hier schon hakt, dann kann es mit Contao erst Recht nicht klappen, so der Gedanke. Sowas in der Richtung.


    Achja:

    Wer versucht denn da auf die Seiten zuzugreifen?

    nur die üblichen Bots die versuchen Wordpress-Installationen und ggf. deren Sicherheitslücken ausfindig zu machen. Jegliche wordpress-Zugriffe kannst du getrost ignorieren, solange du kein Wordpress nutzt.