【検証中】Windows側からWSL上のMySQLにアクセスする

LINUX

## 手順: Windows側からWSL上のMySQLにアクセスする

### ステップ 1: MySQLとPHPがインストールされていることを確認する

#### MySQLのインストール手順

1. **MySQL公式サイトからダウンロード**:

   – [MySQL Community Downloads](https://dev.mysql.com/downloads/mysql/) ページにアクセスします。

   – 「MySQL Installer for Windows」を選択し、ダウンロードします。

2. **MySQL Installerを実行**:

   – ダウンロードしたインストーラーを実行し、インストールウィザードに従ってMySQLをインストールします。

   – インストール時に「MySQL Server」と「MySQL Shell」を選択します。

3. **MySQLのインストールディレクトリを確認**:

   – 通常、MySQLは `C:\Program Files\MySQL\MySQL Server 8.0\bin` にインストールされます。

#### PHPのインストール手順

1. **PHP公式サイトからダウンロード**:

   – [PHP Downloads](https://www.php.net/downloads) ページにアクセスします。

   – Windows用のバイナリをダウンロードします(通常は「Thread Safe」バージョンを選択)。

2. **PHPをインストール**:

   – ダウンロードしたZIPファイルを解凍し、適当なディレクトリに配置します(例: `C:\php`)。

3. **PHPのインストールディレクトリを確認**:

   – PHPは解凍したディレクトリに配置されます(例: `C:\php`)。

### ステップ 2: システムのパスに追加する

1. **環境変数の設定を開く**:

   – `Win + X` キーを押して「システム」を選択し、「システムの詳細設定」をクリックします。

   – 「システムのプロパティ」ウィンドウで「環境変数」をクリックします。

2. **パスを編集する**:

   – 「システム環境変数」セクションの「Path」を選択し、「編集」をクリックします。

3. **MySQLとPHPのインストールディレクトリを追加する**:

   – 「新規」ボタンをクリックして、MySQLとPHPのインストールディレクトリを追加します。

     – MySQLの例: `C:\Program Files\MySQL\MySQL Server 8.0\bin`

     – PHPの例: `C:\php`

4. **変更を保存して再起動する**:

   – すべてのウィンドウで「OK」をクリックして変更を保存し、システムを再起動します。

### ステップ 3: インストール確認

システムを再起動した後、コマンドプロンプトまたはPowerShellを開いて以下のコマンドを実行し、MySQLとPHPが正しくインストールされているか確認します。

#### MySQLの確認

“`powershell

mysql –version

“`

#### PHPの確認

“`powershell

php –version

“`

### ステップ 4: WSL上でMySQLをインストールおよび設定する

1. **WSLのUbuntuターミナルを開く**:

   – スタートメニューを開き、「Ubuntu」と検索してWSLのUbuntuターミナルを起動します。

2. **MySQLをインストールする**:

   “`bash

   sudo apt update

   sudo apt install mysql-server

   “`

3. **MySQLサービスを開始する**:

   “`bash

   sudo service mysql start

   “`

4. **MySQLの初期設定を行う**:

   “`bash

   sudo mysql_secure_installation

   “`

   – プロンプトに従って設定を行います。

### ステップ 5: MySQLの設定ファイルを編集する

1. **MySQLの設定ファイルを開く**:

   “`bash

   sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

   “`

2. **`bind-address`の値を`0.0.0.0`に変更する**:

   “`ini

   bind-address = 0.0.0.0

   “`

3. **ファイルを保存して閉じる**:

   – `Ctrl + O` で保存し、`Ctrl + X` でエディタを閉じます。

4. **MySQLサービスを再起動する**:

   “`bash

   sudo service mysql restart

   “`

### ステップ 6: MySQLユーザーのホストを設定する

1. **MySQLにログインする**:

   “`bash

   sudo mysql -u root -p

   “`

2. **リモートアクセスを許可するユーザーを設定する**:

   “`sql

   CREATE USER ‘dbuser’@’%’ IDENTIFIED BY ‘yourpassword’;

   GRANT ALL PRIVILEGES ON *.* TO ‘dbuser’@’%’ WITH GRANT OPTION;

   FLUSH PRIVILEGES;

   “`

### ステップ 7: Windowsのファイアウォールでポートを開放する

1. **管理者権限のPowerShellを開く**:

   – スタートメニューを開き、「PowerShell」と入力して検索し、「管理者として実行」を選択します。

2. **ファイアウォールルールを追加する**:

   “`powershell

   New-NetFirewallRule -DisplayName “Allow MySQL” -Direction Inbound -Protocol TCP -LocalPort 3306 -Action Allow

   “`

### ステップ 8: WSLのIPアドレスを確認する

1. **WSLのUbuntuターミナルを開く**:

   – スタートメニューを開き、「Ubuntu」と検索してWSLのUbuntuターミナルを起動します。

2. **IPアドレスを確認する**:

   “`bash

   ip addr show eth0

   “`

   – `inet` で始まる行を探し、IPアドレスをメモします(例: `172.25.209.34`)。

### ステップ 9: Windows側からMySQLに接続する

1. **コマンドプロンプトまたはPowerShellを開く**

2. **MySQLに接続する**:

   “`powershell

   mysql -h 172.25.209.34 -u dbuser -p

   “`

### 注意点

**管理者権限**: ファイアウォールルールを追加する際には、必ず管理者権限のPowerShellを使用してください。

**IPアドレスの確認**: WSLのIPアドレスは再起動ごとに変わる可能性があるため、接続するたびに確認してください。

**セキュリティ**: リモートアクセスを許可する際には、強力なパスワードを設定し、必要に応じてファイアウォールやセキュリティグループを設定してアクセスを制限してください。

これで、Windows側からWSL上のMySQLにアクセスできるはずです。

コメント

タイトルとURLをコピーしました