【问题标题】:MariaDB password reset not workingMariaDB 密码重置不起作用
【发布时间】: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

我做错了什么??

【问题讨论】:

    标签: mysql sql linux mariadb


    【解决方案1】:

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

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

    【讨论】:

    • 实际上,这应该在updategrant 之后完成,因为它会刷新内存缓存,并从表中重新加载权限。 Per MySQL Documentation
    • 迟来的固定答案与马特的评论保持一致。
    猜你喜欢
    • 1970-01-01
    • 2016-04-30
    • 2019-01-28
    • 2015-08-25
    • 2014-12-22
    • 1970-01-01
    • 1970-01-01
    • 2015-07-01
    • 2016-12-22
    相关资源
    最近更新 更多