無法遠端存取Mysql的解決方案

來源:互聯網
上載者:User

標籤:記錄   主機   其他   from   表示   來源   限制   table   操作   

現在在很多的互連網公司對於mysql資料庫的使用已經是不可阻擋的趨勢了,所以經常我們在項目開始的時候就會做的事情就是找一台Linux伺服器,到上面去安裝個mysql,然後在開始我們的資料表的匯入工作,但是我們不能一直佔據著伺服器的遠端連線啊,所以經常我們會採用遠程工具去進行資料庫的操作處理,但是我們也會遇到如下狀況:

1 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,然後採用以下方法開啟遠端存取許可權;

12345 #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資料庫的發布版本知識講解 http://www.gooln.com/video/2211.html

12345 mysql -u root -pmysql>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的解決方案

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.