教你解決怎么無法遠程訪問Mysql

現在在很多的互聯網公司對于mysql數據庫的使用已經是不可阻擋的趨勢了,所以經常我們在項目開始的時候就會做的事情就是找一臺linux服務器,到上面去安裝個mysql,然后在開始我們的數據表的導入工作,但是我們不能一直占據著服務器的遠程連接啊,所以經常我們會采用遠程工具去進行數據庫的操作處理,但是我們也會遇到如下狀況:

MYSQL?CONNECT?ERROR?–?1130:Host?’202.43.**.**’?is?not?allowed?to?connect?to?this?MySQL?server“

出現上面拒絕連接的根本原因是因為在創建mysql賬戶時限制連接賬戶遠程登錄的,也就是說:除了當前mysql所在的安裝服務器外,其他的ip(主機)都是不允許訪問的,盡管你的用戶名和密碼是正確的;其實不是MySQL默認不支持遠程,是MySQL的默認用戶root默認不支持遠程,說白了,也就是權限問題,root用戶的Host默認就是127.0.0.1(localhost)最簡單的方法就是重新建了一個用戶,支持遠程訪問,而不用去修改root的權限,建議這樣做,但是如果真的是需要采用root遠程操作嘛也不是沒有辦法,下面提供兩種方案去解決:

①在/etc/mysql/my.cnf中的 [mysqld] 段注釋掉bind-address = 127.0.0.1

②用mysql -uroot -p 登陸mysql,然后采用以下方法開啟遠程訪問權限;

#mysql?-u?root?-p  #*******(密碼,默認的密碼是空)  mysql>use?mysql;  mysql>update?user?set?host?=?'%'?where?user?=?'root';  mysql>flush?privileges;

我們執行代碼之后我們可以看到我們的root用戶對應的host是%,表示允許所有ip連接,如下圖:

教你解決怎么無法遠程訪問Mysql

由于在上面的講解過程中我發現對于有些mysql的用戶來說對于mysql的默認密碼為空這個不是很在意,所以這里對大家給個提醒就是剛剛安裝的mysql,在我們安裝結束之后記得要清除空用戶并及時修改密碼,下面簡單記錄這兩個過程,簡單如下:

來源:MySQL數據庫的發布版本知識講解?

mysql?-u?root?-p  mysql>select?user,host,password?from?mysql.user;  mysql>drop?user?''@localhost;  mysql>update?mysql.user?set?password?=?PASSWORD('*********')?where?user='root';  mysql>flush?privileges;

執行過程如下:

教你解決怎么無法遠程訪問Mysql

?

? 版權聲明
THE END
喜歡就支持一下吧
點贊7 分享