PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mysql Server User anlegen Error 1045



Starfoxfs
23.02.10, 19:08
Hi zusammen,

Ich schon wieder :D

Ich habe mir für Mediatomb Medienserver den Mysql Server installiert.

Mein Problem:

Ich kann keinen Mysql User anlegen.

Ich habe Mysql mit /etc/init.d/mysql start gestartet und dann im Root Shell versucht den User anzulegen:


mysql -u root -p

Dann erscheint:
ENTER Password:

dann tippe ich mein Password ein und dann erscheint:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

Nun habe ich schon die aktuelle Mysql Version (5.1.42-11.1) vom Repo installiert und das Problem ist weiterhin da.

Jemand ne Idee ?

derRichard
23.02.10, 19:12
Jemand ne Idee ?

stimmt das passwort?
das root-passwort vom linux und vom mysql sind zwei paar schuhe...

//richard

Starfoxfs
23.02.10, 19:46
Ich muss doch erst den Benutzer anlegen der hat ja noch kein Passwort normalerweise oder ?!?

derRichard
23.02.10, 19:52
hast du das gelesen?
http://en.opensuse.org/MySQL#First_Start_of_MySQL_in_openSUSE

//richard

Starfoxfs
24.02.10, 16:10
Jap hab ich alles schon durchgekaut hier mal der ein Shell log von heute:

Corebase:~ # rcmysql status
Checking for service MySQL: unused
Corebase:~ # rcmysql start
Starting service MySQL done
Corebase:~ # mysql_secure_installation




NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!


In order to log into MySQL to secure it, we'll need the current
password for the root user. If you've just installed MySQL, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
Enter current password for root (enter for none):
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
Enter current password for root (enter for none):
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
Enter current password for root (enter for none):



Egal was ich hier eingebe es kommt immer der Error1045

derRichard
24.02.10, 16:31
hmm, dann hast da irgendwo etwas verkoffert. ;)
aber egal, du kannst das root-passwort vom mysql ja zurücksetzen.

test das mal:
http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html#resetting-permissions-unix

hth,
//richard

oziris
24.02.10, 20:52
Versuche doch auch bitte mal das:
mysql -u root(Ohne das "-p".) Man kann sich nämlich in mysql auch ohne Passwort anmelden, wenn das dem MySQL-Benutzer erlaubt ist.

Starfoxfs
27.02.10, 16:28
Also ich hab nach wie vor das Problem das ich keinen Benutzer mit Passwort anlegen kann, das ohne Passwort funktioniert aber ist ja nicht Sinn der Sache da die Mysql DB dann nicht geschützt ist.

Ps: Ich habe mein Suse 11.2 komplett neu aufgesetzt und habe auch bei neu aufgesetztem System diesen Fehler.

oziris
28.02.10, 12:38
Das ist ja auch bloß der Anfang.
Du gehst als root ohne Passwort rein, dann gibst Du "SHOW GRANTS;" ein und merkst DIr, was hinter dem @ steht (z.B. "'root'@'localhost'" oder "'root'@'%'").
Dann benutzt Du ein GRANT-Statement mit allen Rechten, für alle DBs und mit IDENTIFIED BY drin, für root@'%' oder root@localhoost und schon hast Du einen root mit Passwort.
Dann musst Du evtl. noch den root ohne Passwort löschen. Dazu kannst Du das Benutzen, was Du Dir am Anfang gemerkt hast. Zuerst gibst Du folgendes ein, um eine Übersicht der Benutzer zu bekommen "select User, Host, Password from user;". Wenn root dort zweimal auftaucht, dann öffne ein zweites Terminal und versuche Dich dort so anzumelden, wie es mit Passwort gehen soll. Wenn das geht, dann benutze das REVOKE-Statement, um den Benutzer zu löschen, der dem ohne Passwort entspricht (der sollte bei User und Host das haben, was Du Dir gemerkt hast und das Passwort ist dann leer).
Bitte melde Dich, wenn Du Probleme hast und sei auch Vorsichtig, damit Du Dich nicht aussperrst.

Starfoxfs
28.02.10, 15:05
Ok also es hat geklappt aber anders ^^

und zwar habe ich eben nochmal Mysql deinstalliert und dann mit


mysqladmin -u root password 'meinpasswort'

das richtig passwort angelegt und kann es nun auch benutzen.

Jetzt habe ich aber eine Frage.

Und zwar habe ich jetzt mal klar Schiff gemacht in Mysql, da durch das ganze hin und her ja doch mehrere Benutzer und Datenbanken entstanden sind.

die Datenbanken :
mysql> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
+--------------------+
2 rows in set (0.00 sec)

sind denke ich standard oder ?

aber hier hab ich ein Problem:

mysql> select user from mysql.user;
+------+
| user |
+------+
| root |
| |
| root |
| |
+------+
4 rows in set (0.00 sec)

Ich hab irgendwie mehrere root user drin wie bekomm ich die gelöscht ?
einer ging mit 'root'@'localhost' zu löschen aber die anderen beiden keine Ahnung

marce
01.03.10, 06:45
öhm, wenn Du nicht weißt, für was die einzelnen Einträge da sind - Finger weg davon.

Und nur mit der Ausgabe des Usernamens kann man nicht sagen, ob der 2. User notwendig ist oder nicht - dazu brauchts auch noch dein (globales) Setup, die Config, ...

Starfoxfs
01.03.10, 09:27
Es sind wohl standardmäßig 3 root eingetragen ... wenn man den einen löscht wie ich es gemacht hatte muss man mysql neu aufsetzen weil man nichtmehr rein kommt. :)

marce
01.03.10, 09:30
muss man nicht. Es reicht, die DBs neu zu initialisieren - oder die Auth. abzustellen.

oziris
01.03.10, 19:59
Starfoxfs, bitte schau doch auch mal, ganz allgemein, ins MySQL-Manual; speziell hier:
http://dev.mysql.com/doc/refman/5.4/en/server-administration.html
... und hier:
http://dev.mysql.com/doc/refman/5.4/en/sql-syntax-server-administration.html

Ich kann das Elend nicht mehr sehen.