ホームページ > データベース > mysql チュートリアル > Unix ソケット経由で MySQL サーバーに接続できないのはなぜですか?

Unix ソケット経由で MySQL サーバーに接続できないのはなぜですか?

DDD
リリース: 2024-12-31 12:44:10
オリジナル
186 人が閲覧しました

Why Can't I Connect to My MySQL Server via Unix Socket?

Unix ソケット経由で MySQL サーバーへの接続エラー

PHP MySQLi クラスを通じて MySQL データベースへの接続を確立しようとすると、次のエラー メッセージが表示される場合があります。ソケット 'MySQL' (2) を介してローカル MySQL サーバーに接続できません。"

エラー

このエラーは、MySQL クライアント ライブラリが接続に Unix ドメイン ソケットを使用しようとしているが、ソケットが正しく構成されていないか、存在しないことを示します。デフォルトでは、ローカルホスト接続は Unix ソケットを使用します。これは TCP/IP よりも高速で安全です。ただし、ソケットが適切に構成されていない場合、「localhost」の指定は機能しない可能性があります。

問題の解決

この問題を解決するには、次の解決策を検討してください:

  • TCP/IP 接続を指定: 「localhost」を使用する代わりに、IP アドレスを使用します。 TCP/IP 接続を強制するには、'127.0.0.1' を使用します。
  • php.ini でソケット構成を確認します: MySQL 構成ファイル (my.cnf) で、ソケット パスを見つけて設定します。 PHP 設定オプション「mysqli.default_socket」をそれに追加します。 path.
  • スクリプトで明示的にソケットを構成: 次の例に示すように、接続を開くときに PHP スクリプトでソケット パスを明示的に設定します。
$db = new MySQLi('localhost', 'kamil', '***', '', 0, '/var/run/mysqld/mysqld.sock');
ログイン後にコピー

以上がUnix ソケット経由で MySQL サーバーに接続できないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート