MySQLへODBCなどを使ってリモート接続するための設定
MySQL を開発サーバなどにインストールした後、別の端末から ODBC などを使って接続するときに参考にしていただけたらと思います。
初めに
Linux の MySQL を想定しています。
SSH クライアントを使って Linux のサーバへ接続してください。
mysql の設定ファイルを編集
接続できる IP アドレスの設定を変更するため、mysqld.cnf を vi などのエディタで開きます。
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
bind-address の記載があるところを修正します。
もともと記載されている設定は、コメントアウトするか削除か書き換えてください。
# 変更前
bind-address = 127.0.0.1
# 変更後
bind-address = 0.0.0.0
サービス再起動。
コマンドは環境合わせて実行してください。
sudo /etc/init.d/mysql restart
or
sudo service mysql restart
接続するユーザの権限を付与
mysql にログインします。
$ mysql -u root -p
mysql というデータベースに接続し、hogehoge という odbc 接続用のユーザを作成します。
権限を与えるためのコード書式。
GRANT ALL PRIVILEGES ON [データベース名].* to [ユーザ名]@"[IPアドレス]" IDENTIFIED BY '[パスワード]';
実際に実行する例。
どこからでも接続できるように、IP アドレスをワイルドカード「%」にしています。
mysql> GRANT ALL PRIVILEGES ON hogetable.* to hogeuser@"%" IDENTIFIED BY 'hogepassword';
接続する
Windows のデータソース(ODBC)で接続設定を作成するか、普段使っているクライアントがあればそれを使って、接続してみてください。