3

I want to establish a connection between my local machine and MySQL database server via Python.

Can someone tell me how to "bind-address with localhost"?

4

1 に答える 1

6

誰かが「ローカルホストにアドレスをバインドする」方法を教えてもらえますか?

これはMySQL構成ディレクティブです。

次のセクションでグローバルmy.iniファイルを編集します。[mysqld]

[mysqld]
# -- various other settings
port = 3306
bind-address = 127.0.0.1
# -- other settings

このファイルを保存してから、サーバーを再起動してください。

編集

MySQLのローカルWindowsインスタンスに接続する場合は127.0.0.1、サーバーのアドレスとして使用します。

Linuxを実行しているリモートサーバーに接続する場合は、少し複雑です。

  1. まず、MySQLがLinuxサーバーのパブリックIPをリッスンしていることを確認します。行を変更してbind-address =、サーバーのパブリックIPに設定します。

  2. ポート3306がファイアウォールによってブロックされていないことを確認してください。

  3. サーバーへの接続に使用するユーザーには、リモートIPから接続する権限が必要です。デフォルトでは、ユーザーには接続する権限のみが付与されlocalhostます。つまり、プログラムがサーバー自体と同じマシンで実行されている場合にのみ接続できます。

リモートIPからのユーザーアクセスを許可するmysql>には、MySQLrootユーザーでログインしたときにシェルから次のコマンドを実行します。

GRANT ALL on somedb.* to someuser@8.8.8.8 identified by 'somepassword';

リモートIPsomeuserからアクセスを許可する場合:

GRANT ALL on somedb.* to someuser@% identified by 'somepassword';

これらの手順の後、MySQLサーバーを再起動して、構成の変更を読み取るようにしてください。

于 2012-06-24T09:24:47.740 に答える