patternsqlMinor
Deleting the MySQL 'root' user on purpose
Viewed 0 times
deletingtheusermysqlrootpurpose
Problem
I created a new mysql user with all the same privileges as the current 'root' user. For security reasons I thought why not create another user for this so people at least won't know the username of my super user.
I then dropped the root user.
Immediately my DB started throwing connection refused errors for all of my other users.
I quickly recreated the original 'root' user and everything magically started connecting again.
My question is then, is it possible to delete the root user in a MySQL database? And if so how?
Thanks.
EDIT 1:
All other security options are in place. We are not just securing our system by trying to remove the root user. We have some over zealous security people here and removing the MySQL root user was just an extra step.
I agree with @Pleun for the reasons I tried to remove it.
I then dropped the root user.
Immediately my DB started throwing connection refused errors for all of my other users.
I quickly recreated the original 'root' user and everything magically started connecting again.
My question is then, is it possible to delete the root user in a MySQL database? And if so how?
Thanks.
EDIT 1:
All other security options are in place. We are not just securing our system by trying to remove the root user. We have some over zealous security people here and removing the MySQL root user was just an extra step.
I agree with @Pleun for the reasons I tried to remove it.
Solution
You can rename the 'root' user.
To rename the administrator’s username, use the rename command in the MySQL console:
The MySQL “RENAME USER” command first appeared in MySQL version 5.0.2. If you use an older version of MySQL, you can use other commands to rename a user:
From here.
To rename the administrator’s username, use the rename command in the MySQL console:
mysql> RENAME USER root TO new_user;The MySQL “RENAME USER” command first appeared in MySQL version 5.0.2. If you use an older version of MySQL, you can use other commands to rename a user:
mysql> use mysql;
mysql> update user set user=”new_user” where user=”root”;
mysql> flush privileges;From here.
Code Snippets
mysql> RENAME USER root TO new_user;mysql> use mysql;
mysql> update user set user=”new_user” where user=”root”;
mysql> flush privileges;Context
StackExchange Database Administrators Q#46903, answer score: 3
Revisions (0)
No revisions yet.