2017-02-28 14 views
0

自分のUbuntuノートパソコンでMySQLdbを実行しています。私はデータベースを作成しました。 ラズベリーパイからラップトップでこのデータベースにアクセスする必要があります。私のラップトップでMySQLに接続するには、ラズベリーのパイ

ラズベリーパイにPyMySQLをインストールしました。私はまた、私のラップトップでmysqld.confファイルを設定し、バインドアドレス行をコメントアウトしました。

しかし、私は私のRPI

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

192.168.10.7で次のコマンドを使用しeherytimeは、私のノートパソコンの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 ServerはMySQLサーバーへのリモートアクセスを許可しますが、MySQLユーザーを設定して任意のホストからのアクセスを許可する必要があります。 たとえば、MySQLユーザーを作成するときは、どのホストからでもアクセスできるようにする必要があります。

CREATE USER 'username'@'%' IDENTIFIED BY 'password'; 
関連する問題