2009-11-03 15 views
17

jestem zalogowany do mysql ...mysql CREATE USER

mysql -u root -pmypass 

A ja uruchomić następujące polecenie, aby usunąć użytkownika bazy danych, który pracował z powodzeniem

mysql> FLUSH PRIVILEGES; DROP USER 'myuser_shop'; 

mogę następnie dodać użytkownika powodzeniem przy użyciu poniższa komenda ponownie działa pomyślnie

mysql> FLUSH PRIVILEGES; CREATE USER 'myuser_shop' IDENTIFIED BY 'mypass'; 

Powyższe polecenie utworzy użytkownika z hostem jako wieloznaczny (%) Emisja Mam to jeśli było stworzenie użytkownikowi samopoczucie gospodarza powiedzieć localhost lub zewnętrznego IP pojawia się następujący błąd:

mysql> FLUSH PRIVILEGES; DROP USER 'myuser_shop'; 
mysql> FLUSH PRIVILEGES; CREATE USER 'myuser_shop'@'localhost' IDENTIFIED BY 'mypass'; 

Query OK, 0 rows affected (0.00 sec) 

ERROR 1396 (HY000): Operation CREATE USER failed for 'myuser_shop'@'localhost' 

jakieś sugestie?

góry dzięki

+1

To, co próbujesz, wygląda dla mnie dobrze. Czy sprawdziłeś http://bugs.mysql.com/bug.php?id=28331, aby sprawdzić, czy Twój problem został tam opisany? – jphofmann

+0

+1 za Twój komentarz do Svetlozara Angelova - to również rozwiązało mój problem! – alfasin

Odpowiedz

13

Jest to błąd zgłaszane tutaj - http://bugs.mysql.com/bug.php?id=28331

Zobacz, czy użytkownik istnieje po upuszczeniu.

+0

Sprawdziłem tabelę "użytkownika" w bazie danych "mysql" i nie ma odwołania do myuser_shop. – Lizard

+5

Faktycznie, mimo że nie pojawił się w tabeli użytkownika, musiał istnieć w pliku db, w szczególności usunąłem UPRAWNIENIA FLUSH; DROP USER 'myuser_shop' @ 'localhost'; a CREATE USER działał! dzięki – Lizard

+0

Komentarz od @lizard pracował dla mnie. – rmarimon

2

Sprawdź po 2 tabele, jeśli użytkownik nadal istnieje po komendzie USER drop: mysql.user i mysql.db.

Usuń użytkownika z obu, a następnie uruchom premię FLUSH, a następnie możesz ponownie utworzyć użytkownika.

-1

Musisz również ręcznie usuwać rekordy z pliku mysql.tables_priv.

+2

Ręczne ingerowanie w 'mysql. *' Jest wysoce niezalecane. – Sammitch

0

kropla użytkownika nazwa_użytkownika @ localhost '

+0

Powinieneś wyjaśnić swoją odpowiedź bardziej – Ascherer

0

ja proponuję użyć phpMyAdmin jej bardzo esey rób z tym.

kroki:

  1. otwarty PhpMyAdmin
  2. przejść do sekcji admin
  3. obrażeń na koncie dodać użytkownika
  4. nazwa użytkownika put i hasło
  5. ustawić prawa

to wszystko zobacz w akcji na youtube [click here]