📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

128行目: 128行目:
  Enter password:(rootユーザに設定したパスワード)
  Enter password:(rootユーザに設定したパスワード)
<br>
<br>
ローカル環境でのみ使用するサーバなので、全ての権限を持ったユーザを作成する。(通常はこのようなユーザは作成しない)<br>
ここでは、全ての権限を持ったユーザを作成する。(通常はこのようなユーザは作成しない)<br>
* MySQL8をローカル環境でのみ使用する場合
  mysql> CREATE USER 'ユーザ名'@'ホスト名' IDENTIFIED BY 'パスワード';
  mysql> CREATE USER 'ユーザ名'@'ホスト名' IDENTIFIED BY 'パスワード';
  mysql> GRANT ALL PRIVILEGES ON *.* TO 'ユーザ名'@'ホスト名';
  mysql> GRANT ALL PRIVILEGES ON *.* TO 'ユーザ名'@'ホスト名';
mysql> FLUSH PRIVILEGES;
<br>
* MySQL8を外部のネットワークから接続する場合
mysql> CREATE USER 'ユーザ名'@'%' IDENTIFIED BY 'パスワード';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'ユーザ名'@'%';
  mysql> FLUSH PRIVILEGES;
  mysql> FLUSH PRIVILEGES;
<br>
<br>
139行目: 145行目:
  Enter password:(作成したユーザに設定したパスワード)
  Enter password:(作成したユーザに設定したパスワード)
<br>
<br>
外部のクライアントPCからMySQLのデータベースに接続する場合は、以下のように、ユーザを作成する。<br>
<u>※注意</u><br>
  mysql> CREATE USER 'ユーザ名'@'%' IDENTIFIED BY 'パスワード';
<u>PHPからMySQL8に接続する場合、以下のエラーが出力されることがある。</u><br>
mysql> GRANT ALL PRIVILEGES ON *.* TO 'ユーザ名'@'%';
Warning: PDO::__construct(): The server requested authentication method unknown to the client [caching_sha2_password]
mysql> FLUSH PRIVILEGES;
<br>
<u>これは、認証プラグインが<code>caching_sha2_password</code>であることが原因である。</u><br>
<u>まず、MySQL8に接続して、認証プラグインを確認する。</u><br>
  mysql> SELECT User, Host, Plugin FROM mysql.user;
<br>
<u>次に、ユーザの認証プラグインを<code>caching_sha2_password</code>から<code>mysql_native_password</code>に変更する。</u><br>
mysql> ALTER USER 'ユーザ名'@'ホスト名または%' IDENTIFIED WITH mysql_native_password BY 'パスワード';
<br>
<br><br>
<br><br>