我正在运行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
我做错了什么?
2条答案
按热度按时间mqxuamgl1#
需要
FLUSH PRIVILEGES;
来加载密码表。请在UPDATE
或GRANT
之后执行此操作。请参阅User manual。(MariaDB和MySQL在此区域应相同。)
2q5ifsrm2#
如果你仍然不能修复它,这里是我用的命令,它修复通过不工作的mysql,命令后,你可以把自己的密码。