如何在 MySQL 中更改 root 用户名

Posted

技术标签:

【中文标题】如何在 MySQL 中更改 root 用户名【英文标题】:How can I change root username in MySQL 【发布时间】:2013-11-01 13:44:11 【问题描述】:

我在 Ubuntu 中运行 mysql,默认安装。

如何将用户名从root 更改为另一个,比如admin?最好从命令行。

【问题讨论】:

【参考方案1】:

连接 MySQL 后运行

use mysql;
update user set user='admin' where user='root';
flush privileges;

就是这样。

如果你还想修改密码,在 MySQL

update user set password=PASSWORD('new password') where user='admin';

flush privileges; 之前。在 MySQL >= 5.7 中,user 表中的password 字段被重命名为authentication_string,所以上面的行变为:

update user set authentication_string=PASSWORD('new password') where user='admin';

【讨论】:

这会不会影响 MySQL 的正常运行,这可能需要 root 用户做一些事情?或者更改该用户名以进行 MySQL 加固是否安全? 应该不会影响 MySQL 的正常运行。 只是想知道,如果有任何选项或解决方法来设置用户名别名,能够同时使用名称 rootadmin 为同一个 root 帐户。 如果使用mysql workbench,需要关闭安全更新模式:Edit -> Preferences -> Sql Editor 然后取消勾选Safe update。 ***.com/questions/11448068/… 表用户不存在【参考方案2】:

我只想对我说,没有“密码”列。

要更改密码,正确的字段是 authentication_string

所以命令是

update user set authentication_string=PASSWORD('new password') where user='admin';

我不是 MySQL 专家,所以我不确定为什么,但我说的是正确的,至少在我的情况下。

【讨论】:

这只发生在 MySQL 5.7 之后,当我发布我的答案时并非如此。我更新了我的答案。 在MySQL-8.0 中再次更改,如果您需要这样做,最好参考手册。

以上是关于如何在 MySQL 中更改 root 用户名的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 WAMP 在 phpMyAdmin 中更改用户名“root”?

mysql 如何更改当前非root用户的密码

如何MySQL和MariaDB数据库修改root密码

如何更改mysql root用户密码

尽管没有超级用户,如何在 MYSQL 中向(root)用户授予超级权限?

数据库密码如何修改 ROOT