此问题已经在这里有了答案:
我想从I9O*Kez
更新我的MySQL密码---> SO123*
我执行这些
mysql -u root -pI9O*Kez
service mysql stop
mysqld_safe --skip-grant-tables &
mysql -uroot
use mysql;
delete from user where User='root';
CREATE USER 'root'@'%' IDENTIFIED BY 'SO123*';
GRANT ALL PRIVILEGES ON * . * TO 'root'@'%';
我不断得到
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
我做这些事完全错了吗?
更新根密码应该不难,对吗?
如消息所述,您的服务器当前正在启用skip-grant-tables
选项的情况下运行。这意味着您的服务器通过任何种类的凭据完全不受保护。
https://dev.mysql.com/doc/refman/8.0/en/server-options.html#option_mysqld_skip-grant-tables
由于您已完全禁用补助金,因此您无法发放补助金。由于您知道旧的root密码,因此不需要skip-grant-tables
即可更改密码;别那样做。仅在需要重设forgotten
您可能也根本不想删除用户-MySQL可以使用ALTER USER
安全地change密码。