MariaDB 密码重置不起作用

Posted

技术标签:

【中文标题】MariaDB 密码重置不起作用【英文标题】:MariaDB password reset not working 【发布时间】:2015-08-26 13:40:52 【问题描述】:

我正在运行MariaDB,我正在尝试重置密码,但它不起作用。

[root@osdial-99a8c941 ~]# mysqld_safe --skip-grant-tables --skip-networking &
[1] 11125

下一次设置密码:

[root@osdial-99a8c941 ~]# mysql -u root
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 1
Server version: 5.5.37-MariaDB-wsrep-log MariaDB Stylite Build (GPL), wsrep_25.10.r3980

Copyright (c) 2000, 2014, Oracle, Monty Program Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> use mysql;
MariaDB [mysql]> update user set password=PASSWORD("new-password") where User='root';
Query OK, 0 rows affected (0.00 sec)
Rows matched: 0  Changed: 0  Warnings: 0

MariaDB [mysql]> select * from user;
Empty set (0.00 sec)

如果你看user 表还是空的:(

即使我尝试创建帐户,但出现以下错误:

MariaDB [mysql]> CREATE USER 'root'@'localhost' IDENTIFIED BY 'new-password';
ERROR 1290 (HY000): The MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement

我做错了什么??

【问题讨论】:

【参考方案1】:

需要FLUSH PRIVILEGES; 来加载密码表。在UPDATEGRANT 之后执行此操作。

请参阅User manual。 (MariaDB 和 MySQL 在这方面应该是相同的。)

【讨论】:

实际上,这应该在updategrant 之后完成,因为它会刷新内存缓存,并从表中重新加载权限。 Per MySQL Documentation 迟来的固定答案与马特的评论保持一致。

以上是关于MariaDB 密码重置不起作用的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 5密码重置不起作用

PHP - 密码重置表单不起作用

Azure AD B2C 自助服务密码重置链接不起作用 [关闭]

从发送的电子邮件网络核心身份调用重置密码时不起作用

ASP.NET Core 2.2 - 密码重置在 Azure 上不起作用(无效令牌)

Linux MariaDB 遗忘密码后重置密码