GNU/Linux >> Linux の 問題 >  >> Debian

MySQLへのリモート接続を許可する方法

はじめに

従来の展開では、多くの場合、MySQLサーバーをインストールして、同じホストから使用します。ただし、MySQLサーバーとクライアントを分離することを強くお勧めします。MySQLサーバーにはリモートホストからアクセスする必要があります。この方法は、システムの安全性を高め、パフォーマンスを向上させるのに役立ちます。

上記の方法を可能にするには、クライアントからのリモート接続を許可するようにMySQLサーバーを構成する必要があります。

MySQLサーバーを構成する

まず、サーバー上の事前定義されたIPまたはすべてのIPアドレスをリッスンするようにMySQLサーバーを構成しましょう。

MySQLサーバーがクライアントと同じネットワークにある場合は、プライベートIPでリッスンポートを構成する必要があります。

一方、パブリックネットワークを介してMySQLサーバーに接続する必要がある場合は、以下の構成に従ってサーバーを構成しましょう。

構成ファイルを開きます:

$ sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

bind-addressで始まる行に移動します

デフォルトでは、bind-addressの値は127.0.0.1

です。

すべてのIPアドレスをリッスンするようにMySQLサーバーを設定する場合は、bind-address =0.0.0.0

の値を構成します。

変更を有効にするには、MySQLサービスを再起動しましょう:

$ sudo systemctl restart mysql

リモートホストからのユーザーへのアクセスを許可する

このパートでは、リモートユーザーにデータベースへのアクセスを許可する方法を紹介します。

MySQLサーバーにログインします:

$ sudo mysql

次に、

mysql> GRANT ALL ON DATABASE-NAME.* TO [email protected] IDENTIFIED BY ‘USER-PASSWORD’;

例:

mysql> GRANT ALL ON linuxways.* TO [email protected] IDENTIFIED BY ‘mysecuredpass’;

ファイアウォールの構成

MySQLサーバーはポート3306でリッスンします。リモートホストからのトラフィックを許可するには、このポートを開く必要があります。以下のいずれかの方法を使用できます:

iptables
$ sudo iptables -A INPUT -p tcp --destination-port 3306 -j ACCEPT

ufw

ufwを使用してポート3306を開く場合は、次のコマンドを実行するだけです。

$ sudo ufw allow 3306/tcp

結論

MySQLサーバーへのリモート接続を許可する方法の詳細についてはすでに説明しました。

ご不明な点がございましたら、お気軽にお問い合わせください。読んでいただきありがとうございます。


Debian
  1. MySQLサーバーをDebian9にインストールする方法

  2. MySQLサーバーをDebian10Busterにインストールする方法

  3. CentOS7にMySQLサーバーをインストールする方法

  1. Ubuntu16.04にMySQLサーバーをインストールする方法

  2. Ubuntu17.04にMySQLサーバーをインストールする方法

  3. Ubuntu16.04にMySQLをインストールする方法

  1. MySQL 8.0/5.7をDebian11/Debian10にインストールする方法

  2. MySQLデータベースサーバーへのリモート接続を許可する方法

  3. Ubuntu Linux で実行されているリモート MySQL サーバーを再起動する方法は?