ERROR 1396 (HY000): Operation ALTER USER failed for 'root'@'localhost'
在網上找了很多帖子都是互相抄的,關鍵是執行后不解決問題,這里分享下我的解法。
問題就是 Navicat連接時報錯
然后再服務器上設置mysql密碼報錯
其實這個問題很簡單:
show databases;
show tables;
執行后會發現有個user 表;
select host,user from user;
第一行host是我自己添加的,最下面一行是一開始就有的root賬戶,可以直接把user表的root賬戶對應的host改為'%'就可以在Navicat上遠程登錄了,就是SQL的update語句,不用搞得那么復雜
update user set host = '%' where host = 'localhost' and user = 'root';
再次查看,發現已經更新成功了
最近需要執行flush privileges;
flush privileges;
然后Navicat就連接成功了