Unix上の MySQL は mysqld
        サーバに次の2つの方法で接続することができます。Unix
        ソケット、これはファイルシステム上のファイル(デフォルトでは
        /tmp/mysqld.sock)を通して接続します。または
        TCP/IPで、これはポート番号を通して接続します。
        Unix ソケットは、TCP/IP
        より高速ですが、同じコンピュータのサーバに接続する場合にしか使用できません。Unix
        ソケットは、ホスト名を指定しない場合、または特別なホスト名
        localhost
        を指定する場合に使用されます。
      
        Windows では、mysqld サーバが 9x/Me
        で動作している場合、TCP/IP
        を介してのみ接続できます。サーバが NT/2000/XP
        で動作しており、mysqld が
        --enable-named-pipe
        で起動している場合は、名前付きパイプと接続することもできます。名前付きパイプの名前は
        MySQL です。 mysqld
        に接続する際にホスト名を与えない場合は、MySQL
        クライアントは最初に名前付きパイプに接続しようとします。これが正しく機能しない場合は、TCP/IP
        ポートに接続します。ホスト名として
        . を使用することにより、Windows
        の名前付きパイプを強制的に使用できます。
      
        エラー(2002)Can't connect to ...
        は、通常、MySQL
        サーバがシステム上で動作していないか、間違ったソケットファイルや
        TCP/IP ポートを使用して、mysqld
        サーバに接続しようとした場合に発生します。
      
        サーバ上で mysqld
        というプロセスが動作しているかどうか、(ps
        か、Windows
        の場合はタスクマネージャを使用して)最初に確認してください。mysqld
        プロセスがなければ、これを起動してください。
        See 項2.4.2. 「MySQL サーバの起動に関する問題」。
      
        mysqld
        プロセスが動作している場合は、さまざまな接続を試してサーバを確認できます(ポート番号とソケットのパス名は、当然セットアップ時と異なる可能性があります)。
      
shell>mysqladmin versionshell>mysqladmin variablesshell>mysqladmin -h `hostname` version variablesshell>mysqladmin -h `hostname` --port=3306 versionshell>mysqladmin -h 'ip for your host' versionshell>mysqladmin --protocol=socket --socket=/tmp/mysql.sock version
        hostnameコマンドは、フォワードクォートではなくバッククォートで囲んでください。これによって、hostname
        の出力(つまり現在のホスト名)が
        mysqladmin
        コマンドに代入されます。
      
        Can't connect to local MySQL server
        エラーが発生する理由として、以下のことが考えられます。
      
            mysqld が動作していない。
          
            MIT-pthreads
            を使用するシステム上で実行している。
            ネイティブスレッドを持たないシステムで実行している場合、mysqld
            は MIT-pthreads パッケージを使用する。See
            項2.2.3. 「MySQL がサポートしているオペレーティングシステム」。ただし、すべてのMIT-pthreads
            バージョンが Unix
            ソケットをサポートしているわけではない。ソケットサポートのないシステムでは、サーバに接続する際に、常にホスト名を明示的に指定する必要がある。以下のコマンドを使用して、サーバへの接続を確認する。
shell> mysqladmin -h `hostname` version
            誰かが、mysqld が使用する Unix
            ソケット(デフォルトでは
            /tmp/mysqld.sock)を削除した。MySQL
            ソケットを削除する cron
            ジョブ(たとえば、/tmp
            ディレクトリから古いファイルを削除するジョブ)を行っている可能性がある。mysqladmin
            version
            を実行し、mysqladmin
            が使用するソケットが本当に存在するかどうかを常にチェックすることができる。この場合の修正方法は、mysqld.sock
            を削除しないように cron
            ジョブを変更するか、ソケットを別の場所に移動させることである。
            See 項A.4.5. 「MySQL ソケットファイル /tmp/mysql.sock
        の保護または変更方法」。
          
            --socket=/path/to/socket
            オプションを指定して、mysqld
            サーバを開始した。サーバのソケットパス名を変更する場合は、MySQL
            クライアントに新しいパスを通知する必要がある。パスを通知するには、ソケットパスを引数としてクライアントに提供する。
            See 項A.4.5. 「MySQL ソケットファイル /tmp/mysql.sock
        の保護または変更方法」。
          
            Linux を使用中にスレッドが 1
            つ消滅した(コアダンプした)。この場合、(たとえば、新しい
            MySQL サーバを実行する前に
            mysql_zap
            スクリプトを使用して)他の
            mysqld
            スレッドを強制終了する必要がある。 See
            項A.4.1. 「MySQL が何度もクラッシュする場合に行うこと」。
          
            ソケットファイルを保持しているディレクトリ、またはソケットファイル自体への読み取り権限と書き込み権限がない可能性がある。この場合、アクセス可能なディレクトリを使用するように、ディレクトリまたはファイルに対する権限を変更するか、mysqld
            を再起動する必要がある。
          
        エラーメッセージ Can't connect to MySQL server
        on some_hostname
        が発生した場合は、以下を行って問題を突き止めることができます。
      
            telnet your-host-name tcp-ip-port-number
            を実行してサーバが立ち上がっているかどうかを確認し、Enter
            キーを数回押す。このポートで MySQL
            サーバが動作している場合は、動作中の MySQL
            サーバのバージョン番号を含むレスポンスが返ってくる。telnet:
            Unable to connect to remote host: Connection
            refused
            などのエラーが発生する場合は、サーバは所定のポートで動作していない。
          
            ローカルマシンの mysqld
            デーモンに接続し、mysqladmin
            variables で mysqld
            が使用するように設定された TCP/IP
            ポート(変数
            port)を確認する。
          
            mysqld
            サーバが、--skip-networking
            オプションで起動されていないか確認する。
          
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.

