2017-02-28 288 views
0

我有一個MySQLdb在我的Ubuntu筆記本電腦上運行。我創建了一個數據庫。 我需要從我的Raspberry pi的筆記本電腦上訪問這個數據庫。從我的筆記本電腦連接到MySQL從Raspberry pi

我在我的樹莓派上安裝了PyMySQL。我還在我的筆記本電腦上配置了mysqld.conf文件,並將綁定地址行註釋掉。

但eherytime我在我的RPI使用以下命令

conn = pymysql.connect(host='192.168.10.7', port='3306', user='root', passwd='password', db='temps') 

192.168.10.7是我的筆記本電腦的IP地址。這個IP地址可以從我的RPi中ping出來。

,但我得到的錯誤

pymysql.err.InternalError: (1130, "Host '192.168.10.7' is not allowed to connect to this MSQL server") 

我是否需要在配置了變化?如果是的話,你能指導我嗎?

+0

您是否在/etc/mysql/my.cnf文件中註釋了bind-address參數?在ubuntu筆記本上做這個 –

回答

0

默認情況下,Ubuntu上的MySQL服務器在本地界面上運行,這意味着不允許遠程訪問MySQL服務器。要啓用到MySQL服務器的遠程連接,您需要更改MySQL配置文件中綁定地址的值。 打開/etc/mysql/mysql.conf.d/mysqld.cnf文件(Ubuntu 14.04和更早版本中的/etc/mysql/my.cnf)。 下的[mysqld]找到行,

bind-address   = 127.0.0.1 

並將它更改爲,

bind-address   = 0.0.0.0 

然後,重新啓動Ubuntu的MySQL服務器。 systemctl restart mysql.service

現在Ubuntu服務器將允許遠程訪問MySQL服務器,但您仍然需要配置MySQL用戶以允許從任何主機訪問。 例如,當你創建一個MySQL用戶時,你應該允許任何主機訪問。

CREATE USER 'username'@'%' IDENTIFIED BY 'password'; 
相關問題