1

データベースに接続しようとしていますが、localhost の代わりに 127.0.0.1 を使用するとエラーが発生します。

Warning: mysqli::mysqli(): (HY000/2002): A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.

127.0.0.1 の代わりに localhost を使用すると、正常に動作します。誰でもこれについて何か洞察がありますか?

接続に使用されるコードは

<?php
    $db = new mysqli('127.0.0.1', 'root', '', 'dbname');
?>
4

1 に答える 1

1

SQL 構成を確認します。このオプションを引き起こす可能性のあるチェックする必要があるものをいくつかリストします。使用している php と sql のバージョンを共有することをお勧めします。LAMPを使用していますか?上記のコメントに記載されているのと同じ問題です。LAMP の新しいバージョンでは、localhost のデフォルトが 127.0.0.1 に変更されました。これが別の問題として出くわす理由であり、それを修正するには別のアプローチが必要です.

1) my.cnf に skip-networking という行がある場合は、それをコメントアウトします。

2) ect/hosts.allow ファイルをチェックして、次の行があることを確認します。

mysqld: ALL

3) ect/hosts.deny ファイルをチェックし、次の行が 1 行しかないことを確認します。

ALL:ALL

問題が解決したかどうかをお知らせください。

于 2016-07-22T13:09:15.433 に答える