mysql 遠端存取串連不上

來源:互聯網
上載者:User

今天在配置一台伺服器的時候,怎麼連不上這台伺服器上的mysql。遠程登入正常,在這台機器上訪問自己的mysql正常。錯誤提示SQL
Error(2003):Can't connect to MySQL server on '**'(ip)(10061)  (**當時就是代指發起訪問請求的遠程IP)。解決如下:

說明:我使用的是Ubuntu10.04作業系統,使用sudo apt-get命令預設安裝的MySQL。

1、首先嘗試在mysql內賦予該賬戶從遠程IP訪問的許可權。

登陸以後運行以下命令,給予遠端存取用戶端許可權..

grant all on *.* to 'remote'@'172.16.21.39' identified by 'password';

其中:remote表示使用者名稱.  '172.16.21.39' 是需要賦予存取權限的Iip地址;password表示遠程登陸密碼.

結果未成功,命令執行成功,但是還是無法遠端存取mysql。還需要進行以下步驟

可能需要以root身份登入上去才能執行該命令。

2、取消mysql本機綁定

也就是取消mysql預設的只能本機訪問的限制。

編輯/etc/mysql/my.cnf(ubuntu下預設mysql的話就是my.cnf,不然就有可能不是這個檔案名稱);找到

# Instead of skip-networking the default is now to listen only on# localhost which is more compatible and is not less secure.bind-address = 127.0.0.1

將”bind-address = 127.0.0.1“注釋掉(前面加上個#即可);如果有需要,可以將127.0.0.1修改成特定的IP地址或者0.0.0.0。

在[mysqld]且面加上

skip-name-resolve

修改之後需要重啟一下mysql服務才會生效。命令:

linux:

sudo /etc/init.d/mysql restart

或者 service mysqld restart

windows:

net stop mysql

net start mysql

至此已經能夠遠端存取MySQL,但是你也許會發現能訪問但是看不到資料庫。這是因為還沒有授予訪問特定資料庫的許可權。

3、給以存在的資料庫授權

如果使用者test 經常在遠程IP地址173.255.213.208的用戶端訪問webdb資料庫,那麼在伺服器端執行的命令應該為(改表法):

mysql> use mysqlmysql> update db set Host='173.255.213.208' where Db='webdb';mysql> update user set Host='173.255.213.208' where user='test';


grant all privileges on rendezvous.* to 'username'@'%' identified by 'password'; flush privileges;

至此,如果沒有意外的話,應該就能遠端存取資料庫了。

有個小細節需要注意。如果你的伺服器裝了防火牆的話,需要開啟3306的訪問,否則也會串連不上。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.