Lizard
Lizard

Reputation: 45022

mysql CREATE USER

I am logged into mysql...

mysql -u root -pmypass

And I have run the following command to remove the database user which worked succesfully

mysql> FLUSH PRIVILEGES; DROP USER 'myuser_shop';

I can then add user successfully using the following command, again this works successfully

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

The above command create a user with the host as a wildcard (%) The issue I am having is if I was to create a user with the host being say localhost or an external IP i get the following error:

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'

Any suggestions?

Thanks in advance

Upvotes: 17

Views: 25802

Answers (5)

insCode
insCode

Reputation: 1265

i will suggest you to use phpmyadmin its very esey do do with that.

steps:

  1. open phpmyadmin
  2. go to admin section
  3. hit on add user account
  4. put user name and password
  5. set privileges

that's all see in action on youtube [ click here ]

Upvotes: 0

Humberto
Humberto

Reputation: 1

drop user 'username@localhost '

Upvotes: 0

marek rodkiewicz
marek rodkiewicz

Reputation: 41

You have to manualy remove records with from mysql.tables_priv also.

Upvotes: -1

Alexei Tenitski
Alexei Tenitski

Reputation: 9370

Check following 2 tables if user is still there after DROP USER command: mysql.user and mysql.db.

Delete user from both, then run FLUSH PRIVILEGES and then you can recreate the user.

Upvotes: 2

Svetlozar Angelov
Svetlozar Angelov

Reputation: 21680

This is a bug reported here - http://bugs.mysql.com/bug.php?id=28331

See if your user exists after you drop it.

Upvotes: 13

Related Questions