ウェブサイト検索

修正: エラー 2003 (HY000): '127.0.0.1' の MySQL サーバーに接続できません (111)


このチュートリアルは、次の操作を試みたときに発生する可能性がある「エラー 2003 (HY000): '127.0.0.1' (111) の MySQL サーバーに接続できません」を解決するために必要な手順を説明することを目的としています。 MySQLデータベースサーバーにアクセスします。

次に進む前に、MySQL/MariaDB を初めて使用する Linux ユーザーの場合は、「初心者のための MySQL/MariaDB – パート 1 および 20 データベース管理のための MySQL (Mysqladmin) コマンド」を学習することを検討してください。リナックスもそう。

一方、すでに中級または経験豊富な MySQL ユーザーであれば、これらの 15 の役立つ MySQL/MariaDB パフォーマンス チューニングと最適化のヒントをマスターできます。

: このチュートリアルでは、mysql データベース サーバーがすでにインストールされていることを前提としています。

本題に戻りますが、このエラーの考えられる原因は何でしょうか?

  1. 特に mysql データベース サーバーがリモート ホストで実行されている場合にネットワーク障害が発生します。
  2. 言及されたホスト上で mysql サーバーが実行されていません。
  3. ファイアウォールが TCP-IP 接続またはその他の関連する理由をブロックしている。

これに対処するための重要な手順を以下に示します。

1. データベース サーバーがリモート マシン上にある場合は、ping コマンドを使用してクライアントとサーバーの接続をテストします。たとえば、次のようになります。

ping server_ip_address

接続が確立したら、アクティブなプロセスの選択に関する情報を表示する以下の ps コマンドを pipe および grep コマンドとともに使用して、mysql デーモンが正常に動作していることを確認します。システム上で実行されています。

ps -Af | grep mysqld

ここで、オプションは次のとおりです。

  1. -A – すべてのプロセスの選択をアクティブ化します
  2. -f – 完全な形式のリストを有効にします

前のコマンドからの出力がない場合は、次のように mysql サービスを開始します。

sudo systemctl start mysql.service
sudo systemctl start mariadb.service
OR
sudo /etc/init.d/mysqld start

mysql サービスを開始した後、データベース サーバーにアクセスしてみます。

mysql -u username -p -h host_address  

2. それでも同じエラーが発生する場合は、netstat コマンドを実行して、mysql デーモンがリッスンしているポート (デフォルトは 3306) を確認します。

netstat -lnp | grep mysql

ここで、オプションは次のとおりです。

  1. -l – リスニングポートを表示します
  2. -n – 数値アドレスの表示を有効にします。
  3. -p – ソケットを所有するプログラムの PID と名前を表示します。

したがって、データベース サーバーにアクセスするときに、-P オプションを使用して、上記の出力に表示されるポートを指定します。

mysql -u username -p -h host_address -P port

3. 上記のコマンドがすべて正常に実行されても、依然としてエラーが表示される場合は、mysql 構成ファイルを開きます。

vi /etc/mysql/my.cnf
OR
vi /etc/mysql/mysql.conf.d/mysqld.cnf 

以下の行を探し、# 文字を使用してコメントアウトします。

bind-address = 127.0.0.1 

ファイルを保存して終了し、その後次のように mysql サービスを再起動します。

sudo systemctl start mysql.service
sudo systemctl start mariadb.service
OR
sudo /etc/init.d/mysqld start

ただし、firewallD または Iptables を実行している場合は、mysql サーバーへの TCP-IP 接続をブロックしているファイアウォールであると想定して、ファイアウォール サービスを確認し、mysql ポートを開いてみてください。

それだけです!上記の MySQL 接続エラーを解決するための他の方法や提案はありますか?以下のフィードバック フォームからコメントを送ってお知らせください。