修正: エラー 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 データベース サーバーがすでにインストールされていることを前提としています。
本題に戻りますが、このエラーの考えられる原因は何でしょうか?
- 特に mysql データベース サーバーがリモート ホストで実行されている場合にネットワーク障害が発生します。
- 言及されたホスト上で mysql サーバーが実行されていません。
- ファイアウォールが TCP-IP 接続またはその他の関連する理由をブロックしている。
これに対処するための重要な手順を以下に示します。
1. データベース サーバーがリモート マシン上にある場合は、ping
コマンドを使用してクライアントとサーバーの接続をテストします。たとえば、次のようになります。
ping server_ip_address
接続が確立したら、アクティブなプロセスの選択に関する情報を表示する以下の ps
コマンドを pipe
および grep コマンドとともに使用して、mysql デーモンが正常に動作していることを確認します。システム上で実行されています。
ps -Af | grep mysqld
ここで、オプションは次のとおりです。
-A
– すべてのプロセスの選択をアクティブ化します-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
ここで、オプションは次のとおりです。
-l
– リスニングポートを表示します-n
– 数値アドレスの表示を有効にします。-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 接続エラーを解決するための他の方法や提案はありますか?以下のフィードバック フォームからコメントを送ってお知らせください。