mysqli::mysqli() エラー: ソケット 'MySQL' 経由の接続が失敗します
を使用して MySQL データベースへの接続を確立しようとすると、 PHP の mysqli クラス、エラー「mysqli::mysqli():」 (HY000/2002): ソケット 'MySQL' を介してローカル MySQL サーバーに接続できません (2)」は、Unix ドメイン ソケット経由で接続を確立できないことを示します。
ソケット エラーの理由
デフォルトでは、「localhost」がホストとして指定されている場合、MySQL は Unix ドメイン ソケット ファイルを使用して接続を試みます。 TCP/IP の代わりに「MySQL」。ただし、このソケットが見つからないかアクセスできない場合、接続は確立できません。
解決策
この問題を解決するには、次の解決策を検討してください。
スクリプトでソケットを指定: を使用して、PHP スクリプトでソケットを直接構成します。次の構文:
$db = new MySQLi('localhost', 'kamil', '***', '', 0, '/var/run/mysqld/mysqld.sock')
のホスト構成Web サイト
Web サイトからデータベースにアクセスできるようにする場合は、別のホストの構成が必要になる場合があります。ホスト構成は、Web ホスティング環境のセットアップと MySQL サーバーの場所によって異なります。リモート ホストの構成に関する具体的な手順については、ホスティング プロバイダーに問い合わせることをお勧めします。
以上がPHP mysqli 接続が「ソケット 'MySQL' (2) を介してローカル MySQL サーバーに接続できません」というメッセージで失敗するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。