Unix ソケット経由で MySQL に接続するときの「そのようなファイルまたはディレクトリはありません」エラーのデバッグ
mysql_connect( ) 関数を使用すると、「そのようなファイルまたはディレクトリはありません (経由で接続しようとしています)」というエラーが発生する場合があります。 unix:///tmp/mysql.sock)。この問題は通常、Unix ソケット接続に指定されたパスが正しくない場合に発生します。
MySQL ソケット接続について
MySQL は、通常、Unix ソケット ファイルを通じてクライアント アプリケーションと通信します。 /tmp/mysql.sock または /var/mysql/mysql.sock にあります。 mysql_connect() 関数を使用する場合、接続文字列でこのソケット ファイルへのパスを指定する必要があります。
エラーの解決
macOS では、MySQL が誤って検索する場合がありますソケット ファイルが間違った場所にある場合。この問題を修正するには、次の手順に従います。
シンボリック リンクの作成
たとえば、/tmp/mysql.sock が存在する場合しかしそうではありません/var/mysql/mysql.sock:
または、/var/mysql/mysql.sock が存在するが存在しない場合/tmp/mysql.sock:
場合によっては sudo を使用する必要があります。ディレクトリまたはシンボリック リンクを作成するときに権限を昇格します。
シンボリック リンクが作成されると、システムは実際の場所に関係なくソケット ファイルを見つけることができるようになります。これにより、Unix ソケット経由で MySQL に接続するときの「そのようなファイルまたはディレクトリはありません」エラーが解決されるはずです。
以上がUnix ソケット経由で MySQL に接続すると「そのようなファイルまたはディレクトリはありません」エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。