Wie kann man in mysql user anzeigen lassen.bzw löschen?


#1

Also ich habe das Thema Datenbanken angefangen und habe vor 2 Tagen großen Fehler gemacht und jetzt kann ich geradenoch von shell datenbanken erstellen und anzeigen. Mehr leider nicht. Ich habe ohne nachzudenken user erstellt und jetzt hilft mir nichtmal das Befehl [SQL]select user from mysql.user;[/SQL] user anzuzeigen. Wie kann man user löschen damit ich neue erstelle?Ich glaube das ist mein Problem warum ich in eclipse auch keine connection bekomme


#2

“create user privileges” fehlen…
Ich hatte schonmal gefragt, wie Du mysql auf dem Mac startest.

Hast Du schonmal in Mac-Foren nach der Docu zu mysql gesucht?


#3

[QUOTE=MZ80A]“create user privileges” fehlen…
Ich hatte schonmal gefragt, wie Du mysql auf dem Mac startest.

Hast Du schonmal in Mac-Foren nach der Docu zu mysql gesucht?[/QUOTE]

ich weiß nichtmehr ob der link von dir oder von andere war, aber die befehle von dort haben mir geholfen. ich weiß immernoch nicht wo meine mysql ordner und auch ordner /usr/local liegt, aber starten tuhe ich in Terminal entweder mitmysqloder mit mysql -u admin

aber vorher muss ich in Äpfel-> systemeinstellungen gehen und von dort der server mit einem klick starten


#4

Du musst einfach mal nach der Fehlermeldung die du bekommst googeln, dann bekommst du zb diese Seite
http://dev.mysql.com/doc/refman/5.1/de/adding-users.html

Dort steht wie man neue User für die DB anlegt
Ebenso steht auch genau erklärt was du machen musst um die privileges zu setzen


#5

Oder hier einer mit genau dem gleichem Problem


Die 2. Antwort erklärt Schritt für Schritt was du machen musst

First thing to do is run this:

SHOW GRANTS;
You will quickly see you were assigned the anonymous user to authenticate into mysql.

Instead of logging into mysql with

mysql
login like this:

mysql -uroot
By default, root@localhost has all rights and no password.

If you cannot login as root without a password, do the following:

Step 01) Add the two options in the mysqld section of my.ini:

[mysqld]
skip-grant-tables
skip-networking
Step 02) Restart mysql

net stop mysql
<wait 10 seconds>
net start mysql
Step 03) Connect to mysql

mysql
Step 04) Create a password from root@localhost

UPDATE mysql.user SET password=password(‘whateverpasswordyoulike’)
WHERE user=‘root’ AND host=‘localhost’;
exit
Step 05) Restart mysql

net stop mysql
<wait 10 seconds>
net start mysql
Step 06) Login as root with password

mysql -uroot -p
You should be good from there.

CAVEAT: Please remove anonymous users !!!

lies es aber besser direkt auf der Seite, dort steht es besser Formatiert und somit besser lesbar

edit: Huch ich hab doch beim ersten auf bearbeiten gedrückt, wieso ist es nun ein neuer Post? Oo


#6

Aso ich habe so gemacht, aber ich glaube nicht, dass es stimmt

in terminal eingegeben:

[SQL]mysql -u admin[/SQL]

dann die beide

[SQL]skip-grant-tables
skip-networking
[/SQL]

Dann habe ich von systemeinstellungen gestoppt und gestartet

dann wieder von komandozeile mit [SQL]mysql[/SQL] eingelogt

dann
[SQL]UPDATE mysql.user SET password=meinepasswort
WHERE user=‘admin’ AND host=‘localhost’;
exit
[/SQL]
und ich bekomme trotzdem diese Meldung
ERROR 1142 (42000): UPDATE command denied to user ‘’@‘localhost’ for table 'user’

wo mache ich Fehler?

danke euch Anni


#7

Solche Fehlermeldungen kann man immer fix googlen

Möglicher Ansatz (Quelle: http://stackoverflow.com/questions/7980032/update-command-is-denied-for-user)

Your user doesn’t have the right permissions. You need to give it access to the UPDATE command, like so:

GRANT UPDATE ON database.* TO test@‘localhost’ IDENTIFIED BY ‘password’;

Oder die Antwort danach könnte auch helfen:

s everyone else said, it’s permission issue. I am sure you probably checked, but just in case. After you log into phpmyadmin, run the following:

SELECT USER();
That should spit out ‘test’@‘localhost’ as indicated in all the comments above

Then run

SHOW GRANTS FOR ‘test’@‘localhost’
That should give you all privs for that user. When you get results, select ‘Options’, Full Text and click go to get full text.

Make sure permissions in the output have something like that:

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE ON your_database.* TO ‘test’@‘localhost’
You might not be able to get GRANT ALL on some hosting setups but as long as you got INSERT, UPDATE, DELETE you should definitely be able to update the data

Hier ist nochmal jemand mit dem gleichen Problem