Ich hatte ein spannendes Problem und zwar wollte ich mich in meinem Raspberry Pi in mein phpMyAdmin einloggen und ich habe gemerkt, dass ich gar nicht mehr alle Passwörter weiss – ich wusste auch nicht mehr welche User es gibt.
Nun ist es ja so es gibt ein Superadmin der heisst root. Aber da ich dieses Passwort auch nie verwende (Jedes Projekt hat einen eigenen Benutzer mit eingeschränkten Rechten), stand ich also vor einem Problem.
Aber wenn man noch Zugriff auf den Raspberry Pi hat, kann man über den Terminal das ganz schnell fixen.
Neues MYSQL Root Passwort setzen
Ich habe mich also über das Terminal mit dem Raspberry PI verbunden
MYSQL Server stoppen
Nun muss man zuerst mal den MYSQL Server stoppen
1 | sudo /etc/init.d/mysql stop |
Raspberry PI Superadmin aktivieren
Ich bin zu faul, dauernd das Passwort neu eingeben zu müssen, also erkläre ich mich im Raspberry zum Superadmin / Root User
1 | sudo -s |
MYSQL Rechte ignorieren
Nun möchte ich das MYSQL nicht meine Rechte checkt wenn ich mich einlogge
1 | mysqld_safe --skip-grant-tables & |
In MYSQL einloggen
Nun logg ich mich als Root in MYSQL ein
1 | mysql -u root |
Verwende MYSQL Datenbank
1 | use mysql; |
Neues Root Passwort hashen
MYSQL speichert ja nicht die Passwörter sondern nur die Hash davon in der Datenbank. Also müssen wir den Hash des neuen Passwort erzeugen.
1 | update user set authentication_string=PASSWORD("DeinNeuesPasswort") where user='root'; |
User updaten
Damit verknüpft man den Hash mit dem User
1 | update user set plugin = "mysql_native_password" where user='root'; |
Privilegien neuladen
1 | flush privileges; |
MYSQL schliessen
1 | quit; |
MYSQL Server stoppen
1 | /etc/init.d/mysql stop |
MYSQL Server stoppen
1 | /etc/init.d/mysql start |
Passwort ist nun geändert
Nun ist also das Passwort geändert und man kann sich wieder einloggen
http://DEINE-IP/phpmyadmin
PHPMYADMIN User checken / updaten
Ich habe ja jetzt mein neues Root Passwort und kann mich also in phpMyAdmin damit wieder einloggen.
Als Root in PHPMYADMIN einloggen
Man geht also zu phpMyAdmin hin unter: http://DEINE-IP/phpmyadmin und gibt dann einfach Root als Benutzername und das neue Passwort ein (Welches wir ja vor wenigen Minuten gesetzt haben)
Benutzer anschauen
Nun klick ich einfach auf Benutzerkonten
Benutzernamen
Nun sehe ich alle angelegten Benutzer in meiner Datenbank und kann jetzt mit einem Klick auf ≪Rechte ändern≫ neue Passwörter setzen
Passwort ändern
Klickt jetzt auf Passwort ändern und dann gibts eine neue Seite
Neues Passwort setzen
Jetzt könnt ihr ein neues Passwort setzen.
Fazit
Nun seid ihr also fertig und habt das Problem gelöst. Ihr habt euch jetzt ein neues Root Passwort gesetzt und sogar sehen können welche anderen Benutzerkonten es gibt und konntet auch diese Passwörter ändern.
Damit habt ihr wieder vollen Zugriff auf alles.
Wie ihr jetzt sehen könnt, es ist eigentlich gar nicht so schwer das Passwort Problem in einem Raspberry Pi zu lösen. Ihr braucht eigentlich nur das Raspberry Pi Passwort und dann könnt ihr alles sehr einfach neu setzen.
Diese Lösung geht übrigens auch auf anderen Systemen.
schon gemerkt. hab das mit der Root auch schon geloest. Super danke
Hi Eric,
leider erreiche ich weder meine WordPress Installation noch den phpMyAdmin Bereich. Ich habe nach einem Update von Google Chrome die IP zum Einloggen nicht mehr. Wie kann ich diese herausfinden? Welchen Befehl muss ich im Terminal eingeben um diese herauszufinden. Oder finde ich diese irgendwo unter: /var/www/html/phpmyadmin? Hintergrund des “Ärgers” ich konnte den Adminberich nach einem Neustart plötzlich nicht mehr erreichen. Es wurde ständig der Fehler: Err_IP-NotReachable oder so ähnlich ausgegeben. Gestern hat die Anmeldung noch funktioniert. Da konnte ich noch Änderungen an der WebSite vornehmen. Danke für die Antwort im voraus.
check mal dein wlan gerät / fritzbox – da sind alle ips aufgelistet.
Hallo Eric,
ich habe mir vor 6 Wochen (als blutiger Anfänger) einen Raspberry Pi 400 gekauft und mit Python ein Script für eine Heizungsteuerung erstellt. Das Programm läuft prima. Leider kann ich die Sollwerte und Schaltzeiten für die einzelnen Termostatventile aber nur über die Konsole verstellen. Ziel ist deshalb die Steuerung über ein Smartphone zu bedienen.
Dazu habe ich nach ihrem Video “Raspberry PI – Wie installiere ich einen Webserver mit PHP und eine Datenbank” alles erfolgreich installiert. Die Datenbank lief. Leider war es aber nicht möglich die DB mit phpMyAdmin zu öffnen: #1045 – Access denied for user ´admin@localhost´ (using password: YES) und mysqli_real_connect(): (HY000/1045)…..
Deshalb habe ich versucht ein neues Passwort zu vergeben, wie in diesem Video beschrieben. Das hat soweit wohl auch geklappt.
Dann habe ich den Server gestoppt und dann versucht ihn wieder zu starten. Das klappt aber leider nicht. Im mariadb.service steht: Main process exited, code=exited, Status=1/FAILURE
Haben Sie eine Idee was ich falsch gemacht habe?
Vielen Dank im Voraus!
Guten Abend. Hast du mal das Log kontrolliert – befindet sich irgendwo unter /var/log/mysql dann schau mal was darin steht
Hallo Eric,
als letzte Meldung im Log steht [Warning] Access denied for user “root@localhost” (using password: NO).
Vorher sind dutzende weitere Meldungen mit denen ich aber nichts anfangen kann. U.a. [ERROR] Aria engine is not enabled or did not start, oder [ERROR] mysqld: Can´t lock aria control file …. for exclusive use, error: 11……
sieht so aus als ob die db gar nicht richtig installiert ist. wen das bei mir der fall ist, nehme ich immer die sudo install befehle – in vielen fällen klappts dann
Hallo Eric,
ich habe die MariaDB deinstalliert und neu installiert.
Am Punkt MariaDB [(none)]> create user admin@localhost identified by ´……´; bleibe ich hängen.
Es kommt die Meldung ERROR 1396 (HY000): Operation CREATE USER failed for ´admin´@´localhost´
Was mache ich, oder habe ich falsch gemacht? Können Sie mir da bitte weiterhelfen?
anscheinend gibts ein bug der hin und wieder auftaucht wenn man einen user versucht anzulegen – hier gibts eine anleitung mit drop wie man den bug “umgehen” kann. https://sebhastian.com/mysql-error-1396/