PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : mySQL root user löschen



feliXyz
16.11.04, 10:45
hallo,

ich habe mysql auf der SUSE8.2 distribution installiert. zusätzlich habe ich das mysql-client paket installiert.

ich war nun der meinung, dass ich über

mysqladmin -u root -h localhost -p

einen benutzer für die datenbank anlegen muß. leider kann ich mich partu nicht an der datenbank anmelden. ich hab' nun gelesen, dass dies problem bekannt ist und das der root benutzer der datenbank gelöscht werden muß. im anschluß ist das root konto neu anzulegen. aus diversen anleitungen, die ich gelesen habe werde ich allerdings nicht schlau.

mysql-doku (http://dev.mysql.com/doc/mysql/en/Resetting_permissions.html)

bei dieser doku komme ich an der stelle nicht weiter ander ich den mysql-deamon mit der skip-grant-tables option starten soll. ich erhalte folgende fehlermeldung:
lx-mysql:/ # mysqld -Sg
Fatal error: Please read "Security" section of the manual to find out how to run mysqld as root!
041116 10:36:44 Aborting

041116 10:36:44 mysqld: Shutdown Complete

weiß jemand wo ich einen fehler mache oder hat eine andere möglichst einfachere lösung für mein problem

gruß felix

UB_Kaschke
16.11.04, 14:31
ich war nun der meinung, dass ich über

mysqladmin -u root -h localhost -p

einen benutzer für die datenbank anlegen muß. leider kann ich mich partu nicht an der datenbank anmelden. ich hab' nun gelesen, dass dies problem bekannt ist und das der root benutzer der datenbank gelöscht werden muß. im anschluß ist das root konto neu anzulegen. aus diversen anleitungen, die ich gelesen habe werde ich allerdings nicht schlau.

Ich glaube zwar nicht das ich hier hilfreich sein kann - ich hatte mal das selbe Problem. Bei der Installation von MySQL wird bereits ein Datensatz in die Tabelle "users" für den Benutzer root ohne Passwort angelegt. Somit müsste die 1. Anmeldung eigentlich ohne Passwort funktionieren. Ich habe damals die Benutzertabelle über das Webtool "phpMyAdmin" angepasst. Falls es installiert ist könnte man zumindest mal versuchen darüber Zugriff auf die Datenbank zu erlangen.

phoenix22
16.11.04, 15:33
mysqld_safe mit --skip-grant-tables starten, nicht mysqld, steht übrigens auch in der Anleitung :p

Tomek
16.11.04, 15:55
ich hab' nun gelesen, dass dies problem bekannt ist und das der root benutzer der datenbank gelöscht werden muß. im anschluß ist das root konto neu anzulegen. aus diversen anleitungen, die ich gelesen habe werde ich allerdings nicht schlau.
Irgendwie hast du was falsch verstanden denk ich. Also der User root auf dem System und in der Datenbank muss und sollte keinesfalls gelöscht werden. Es lediglich darum, dass der User root in MySQL standardmässig kein Passwort gesetzt hat und man eben dies nach der Installation setzen soll.

eclipse
16.11.04, 15:58
Nun musst du aber mal erklären Tomek warum der User root Vollzugriff auf MySQL haben soll.
Das muss er nämlich garnicht, und sollte er auch nicht unbedingt. ;)

Tomek
16.11.04, 16:00
Ich sprach vom Benutzer root in der MySQL-Datenbank und nicht auf dem System. Der User root in der MySQL-Datenbank ist genauso nötig, wie der User root auf dem Linux-System. Wie will man sonst Datenbanken erstellen, administrieren oder verwalten?!

eclipse
16.11.04, 16:04
Dafür muss nicht root zuständig sein.
Das kann jeder priviligierte User der Zugang hatt zur Datenbank.
Es muss nicht root sein.

Tomek
16.11.04, 16:16
Das ist mir schon klar, dass es auch Egon sein kann, der diese Rechte hat. Aber es ging mir darum, dass man nach der MySQL-Installation eben nicht den User root ohne weiteres löschen sollte.

phoenix22
16.11.04, 16:19
Ich hab es so verstanden, dass das mysql root password schon gesetzt ist, er es nicht weiß und es ändern will. Dann ist die Vorgehensweise schon richtig.

eclipse
16.11.04, 16:35
Dann erklärst doch so Tomek. ;)

feliXyz
17.11.04, 08:25
morgen,

ich kann von der konsole des mysql-servers üder den befehl

mysql -u root -p

mittlerweile auf die datenbank zugreifen. der zugriff von einem client aus der windowswelt hat bisher nur einmalfunktioniert und zwar als ich den mysql-deamon über

mysqld -Sg also mit der skip-grant-tables option gestartet habe.

was mache ich falsch? die datenabnk läuft momentant über das skript im /etc/init.d-verzeichnis

gruß