客戶端連接報錯
這個問題是因為用戶在數據庫服務器中的mysql數據庫中的user的表中沒有權限。
解決步驟
1、連接服務器: mysql -u root -p
2、看當前所有數據庫:show databases;
3、進入mysql數據庫:use mysql;
4、查看mysql數據庫中所有的表:show tables;
5、查看user表中的數據:select Host, User,Password from user;
上面localhost表示只允許本地連接,不能遠程連接
6、修改user表中的Host
%表示開啟遠程連接
update user set Host='%' where User='root' and Host="localhost";
上面這樣改了后,會導致xshell連接看不到所有的數據庫(xshell連接表示本地連接),localhost才表示本地連接(注意:上面localhost沒有設置密碼,所以本地連接,就不用密碼;navicat表示遠程連接,需要密碼),參考:https://www.cnblogs.com/UncleYong/p/10931195.html
7、最后刷新一下:flush privileges;
8、重新在Navicate中測試一下:
至此,問題解決。