sql >> データベース >  >> RDS >> Mysql

Windowsプラットフォームでmysql_connect(localhost / 127.0.0.1)が遅い

    PHPはローカルホストへの接続を開こうとしています。コンピュータはIPv6を介してネットワークに接続されているため、最初にIPv6バージョンの「localhost」を試行します。これは::1

    のIPアドレスです。

    http://en.wikipedia.org/wiki/IPv6_address#Special_addresses

    MySQLサーバーはそのアドレスをリッスンしていないようです。代わりに、IPv4アドレスにのみバインドされているため、PHPが接続を開くことができないと、フォールバックしてIPv4(別名127.0.0.1)経由でローカルホストを開こうとします。

    私は個人的にIPアドレスを使用するか、Windowsホストファイルまたは同等のMacを使用して「偽の」ドメイン名を定義し、MySQLに接続するときにIPアドレスに解決されるものを使用することを好みます。どちらの方法でも、IPv4アドレスとIPv6アドレスのどちらが使用されるかを正確に知ることができます。

    MySQLとApacheはどちらもIPv6をサポートしていますが、IPv6アドレスを明示的に使用するように指示する必要があります。 MySQLについては、http://dev.mysqlを参照してください。 .com / doc / refman / 5.5 / en / ipv6-server-config.html

    Apacheの設定については、次を参照してください。 http://httpd.apache.org/docs/2.2/ bind.html

    Apacheは複数のIPアドレスをサポートしているため、マシンのネットワークカードにIPv4アドレスとIPv6アドレスの両方がある場合は、両方を同時に使用できます。 MySQLは1つのアドレスのみをサポートします。



    1. mySQLから(文字だけでなく)最初のX語をプルする

    2. MySQLにヨーロッパの通貨を保存する方法は?

    3. エラー:セットアップスクリプトがエラーで終了しました:コマンド'gcc'が終了ステータス1で失敗しました

    4. postgres JSONインデックスは、従来の正規化されたテーブルと比較して十分に効率的ですか?