ステップ 1: MySQL でリモート アクセスが有効かどうかを確認する
構成を開始する前に、MySQL でリモート アクセスが有効になっていることを確認する必要があります。まず MySQL サーバーにログインし、リモート アクセスが有効かどうかを確認する必要があります。ターミナルを開き、次のコマンドを入力します:
sudo mysql -u root -p
このコマンドは、root ユーザーとして MySQL にログインします。このコマンドを入力すると、パスワードの入力を求められます。正しいパスワードを入力すると、MySQL シェルに入り、MySQL サーバーのコマンド ライン インターフェイスにアクセスできるようになります。 MySQL シェルでリモート アクセスが有効になっているかどうかを確認するには、次のコマンドを入力する必要があります。
SELECT user,authentication_string,host FROM mysql.user;
リモート アクセスが有効な場合は、次の出力が表示されます。
+------------------+-------------------------------+-----------+ | user | authentication_string | host | +------------------+-------------------------------+-----------+ | root | *E0AAECBBB187B27AAF667AEC86667 | localhost | | root | *E0AAECBBB187B27AAF667AEC86667 | % | | mysql.session | *THISISNOTAVALIDPASSWORDTHAT | localhost | | mysql.sys | *THISISNOTAVALIDPASSWORDTHAT | localhost | | debian-sys-maint | *456D0C7680DF288F66F7401EABC4B | localhost | +------------------+-------------------------------+-----------+
The "% 「ここでは、MySQL が任意のホストからのユーザー アクセスを許可することを意味します。この出力が表示された場合、MySQL ではリモート アクセスが有効になっています。
上記の出力が表示されない場合、または上記とは異なる出力が表示される場合は、MySQL でリモート アクセスが有効になっていないことを意味します。この場合、リモート アクセスを許可するように MySQL を構成する必要があります。
ステップ 2: MySQL の新しいリモート アクセス アカウントをセットアップする
MySQL へのリモート アクセスを有効にするには、まず新しいリモート アクセス アカウントを作成する必要があります。 MySQL では、デフォルトで root ユーザーのみがローカルでサーバーにアクセスできるようにしており、他のユーザーがアクセスするにはパブリック認証を使用する必要があるため、このように設定されています。
新しいリモート アクセス アカウントを設定するには、MySQL シェルで次のコマンドを実行する必要があります:
CREATE USER 'newuser'@'%' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES;
これらのコマンドは、「newuser」という名前の新しいユーザーを作成し、すべてのユーザーを割り当てます。アクセス権 。 「%」は、ユーザーが任意のホストから MySQL サーバーにアクセスできることを意味します。特定の IP アドレスまたはホスト名を使用して、許可するホストを指定することもできます。たとえば、「newuser」@「10.0.0.2」は、IP アドレス「10.0.0.2」のホストからのみ MySQL サーバーへのアクセスが許可されることを意味します。
ステップ 3: MySQL トラフィックを許可するようにファイアウォールを構成する
通常、MySQL サーバーはファイアウォールによって保護されている場合があります。 MySQL サーバーへのリモート アクセスを許可するには、ファイアウォールで MySQL ポートを開く必要があります (デフォルトは 3306)。これを行うには、次のコマンドを入力する必要があります。
sudo ufw allow 3306/tcp
このコマンドは、ファイアウォールを通過する TCP トラフィックを許可し、「3306」という名前のポートを開きます。この手順を実行する前に、ファイアウォールがインストールされ有効になっていることを確認してください。
ステップ 4: MySQL 構成ファイルを更新する
MySQL サーバーへのリモート ログインを許可するには、MySQL 構成ファイルで構成する必要があります。デフォルトでは、MySQL 設定ファイルは「/etc/mysql/mysql.conf.d/mysqld.cnf」にあります。管理者としてファイルを開き、次のようにいくつかの値を編集する必要があります:
bind-address = 0.0.0.0
MySQL サーバーは任意の IP アドレスからの接続リクエストを受け入れます。次のコマンドを使用します。これにより、MySQL サーバーが不正アクセスに対して脆弱になる可能性があるため、注意が必要です。 MySQL へのリモート アクセスをより安全にしたい場合は、アクセスを許可する IP アドレスまたは CIDR 範囲を指定する必要があります。
ステップ 5: MySQL サーバーを再起動します
MySQL 構成ファイルを変更した後、変更を有効にするために MySQL サーバーを再起動する必要があります。 MySQL を再起動するには、次のコマンドを使用できます:
sudo systemctl restart mysql
次の出力が表示された場合は、MySQL サーバーが正常に再起動されたことを意味します:
mysql.service - MySQL Community Server Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2019-01-21 15:40:22 EST; 17s ago
この時点で、正常に再起動されています。 MySQL サーバーのリモート アクセスをセットアップします。
以上がUbuntu で MySQL リモート アクセスをセットアップする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。