Mysql
Sandbox-HDP MySQL 伺服器使用 –skip-grant-tables 選項執行,因此無法執行此語句
我在我的 Hortonworks HDP 上安裝了 MySQL 和 MySQL 社區伺服器。我開始服務並嘗試更改密碼
/usr/bin/mysql_secure_installation Securing the MySQL server deployment. Connecting to MySQL using a blank password. The 'validate_password' plugin is installed on the server. The subsequent steps will run with the existing configuration of the plugin. Please set the password for root here. New password: Re-enter new password: Estimated strength of the password: 50 Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y ... Failed! Error: The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
而且這個過程一次又一次地重複。
skip=grant-tables
我從我的/etc/my.conf
文件中刪除我嘗試了 bart 的建議,它首先有效,但後來我遇到了同樣的問題。
I logged as a root. mysql> create database registry; Query OK, 1 row affected (0.05 sec) mysql> CREATE USER 'registry'@'%' IDENTIFIED BY 'R12$%34qw'; ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
如何解決這個問題?
只需正常停止並重新啟動 MySQL。
編輯
除此以外:
確保刷新權限:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES;
從文件中:
刷新特權
從 mysql 數據庫中的授權表重新載入權限。
作為 GRANT 和 CREATE USER 語句的結果,伺服器將資訊記憶體在記憶體中。該記憶體不會被相應的 REVOKE 和 DROP USER 語句釋放,因此對於執行許多導致記憶體的語句實例的伺服器,記憶體使用量會增加。可以使用 FLUSH PRIVILEGES 釋放此記憶體記憶體。