教你解決怎麼無法遠端存取Mysql

怪我咯
發布: 2017-06-23 13:15:40
原創
1717 人瀏覽過

現在在很多的網路公司對於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

以上是教你解決怎麼無法遠端存取Mysql的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!