安裝mysql時,我沒有在root密碼字段中輸入任何內容,但是當我運行mysql -u root
時,我仍然得到了Access denied for user 'root'@'localhost'
。無法將root密碼設置爲空
我以安全模式啓動mysql,沒有授權表,sudo mysql_safe --skip-grant-tables &
,然後跳入mysql -u root
沒有問題。
然後我做了use mysql; update user set authentication_string=null where user='root';
和我:
Query OK, 0 rows affected (0.00 sec)
Rows matched: 1 Changed: 0 Warnings: 0
任何人有原因的密碼沒有更新任何見解?
看看輸出的最後幾行。最後一行應該說'行匹配:1改變:1警告:0'。 'FLUSH PRIVILEGES;'這裏什麼都不做,因爲沒有任何變化。而且,在MySQL 5.7中'password'字段已被'authentication_string'替換。 –
是的,你是對的,我沒有看到「0行受影響」。選擇用戶表並查看錶中存在的根用戶 –