XAMPPのMariaDBに外部ホストから接続する(Windows)
XAMPPのMariaDBに外部ホストから接続するのを突然やってみたくなった。
Windowsのファイアウォールに穴をあける
すでに穴が開いているかもしれないけど、確認。

Windowsマシンのネットワークが「パブリッック」になっているか「プライベート」になって いるかを確認する。
そして、下の方の「Windowsファイアウォール」をクリック。

「ファイアウォールによるアプリケーションの許可」をクリック。

一覧の中から「mysqld」を探す。
右側にチェックが入っていたら、「許可」になっている。
ここでは「プライベート」も「パブリック」もチェックを入れたおいた。
「設定の変更」ボタンをクリックすると、変更できる。
これで、Windowsファイアウォールは mysqld への外部からの接続を許可してくれる。
my.ini の確認
いちおう、my.ini を確認しておく。
45行目あたりに「bind listening」の項目があるが、 もし以下のようになっていたら、コメントアウトしておく。
bind-address="127.0.0.1"
これはローカルホストからの接続に制限するという意味みたい。
コメントアウトする以外に、以下のようにしてもよい。
bind-address="0.0.0.0"
これは、すべてのホストからの接続を許可するという意味みたい。
僕は、コメントアウトにした。
MariaDBの設定
一応、以下のような状況を想定する。
外部ホストのIPアドレス | 192.168.1.17 |
作成するデータベース名 | sample |
接続するユーザー名 | seiichi |
パスワード | seiichi |
以下の作業を root で行う。
MariaDB [(none)]> GRANT ALL ON sample.* to 'seiichi'@'192.168.1.17' IDENTIFIED BY 'seiichi';
MariaDB [(none)]> FLUSH PRIVILEGES;
データベースを作成しなくても、外部からアクセスした後に seiichiユーザーが作成できるはず。
今回は、ここで作成しておいたけど。
MariaDB [(none)]> CREATE DATABASE sample;
接続
別のPCから以下のようにして接続できた。
$ mysql -u seiichi -h 192.168.1.11 -pseiichi -D sample
カテゴリー: mariadb, memo, Windows
タグ: connect, mariadb, xampp
カウント: 285