我想从 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
我做这些完全错了吗?
仅仅更新 root 密码不应该这么困难 - 对吧?
请您参考如下方法:
正如消息所示,您的服务器当前正在运行并启用了 skip-grant-tables
选项。这意味着您的服务器完全不受任何类型的凭据的保护。
https://dev.mysql.com/doc/refman/8.0/en/server-options.html#option_mysqld_skip-grant-tables
由于您已完全禁用补助金,因此您无法发放补助金。由于您知道旧的 root 密码,因此不需要 skip-grant-tables
来更改密码;别那样做。仅当您需要重置忘记 root 密码时才需要这样做。
您可能根本不想删除用户 - MySQL 可以使用ALTER USER
安全地更改密码。