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"?
誰かが「ローカルホストにアドレスをバインドする」方法を教えてもらえますか?
これは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を実行しているリモートサーバーに接続する場合は、少し複雑です。
まず、MySQLがLinuxサーバーのパブリックIPをリッスンしていることを確認します。行を変更してbind-address =
、サーバーのパブリックIPに設定します。
ポート3306
がファイアウォールによってブロックされていないことを確認してください。
サーバーへの接続に使用するユーザーには、リモート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サーバーを再起動して、構成の変更を読み取るようにしてください。