接続先環境
key | version |
---|---|
OS | Ubuntu16.04 |
MySQL | 5.7 |
mysqlのインストール
$ sudo apt-get install mysql-server
ファイアーウォールの設定
# ufwがなければインストール
$ sudo apt-get install ufw
# mysqlのデフォルトポート3306の通信を許可する
$ sudo ufw allow 3306
IPアドレスの制限を外す
ここで結構躓いた...
mysqlでは接続元のIPを制限しているため,その設定を変更しないと外部から接続できない模様.
# mysqld.cnfの編集
$ sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
# bind-addressをコメントアウトする。
bind-address = 127.0.0.1
アクセス権限を付与する
ユーザーへのアクセス権を編集する.
とりあえずrootユーザーの制限を外して確認した.(セキュリティ的に良くないけど)
# mysqlにログイン(パスワードを聞かれるので入力)
$ mysql -u root -p
# rootユーザはどのIPからもアクセス可能に
mysql> grant all privileges on [データベース名].* to root@"%" identified by 'パスワード' with grant option;
接続テスト
接続元でもmysqlをインストールしてテスト.
$ mysql -h 接続先ホスト -u root -p
rootユーザーのパスワードを入力して接続できることを確認.