先日、MySQLでSocket Error Code: 10057というエラーが発生して接続できなくなったので対応メモです。

エラーの内容
いつものようにeclipseでアプリを実行していたらMySQLでエラーが発生して起動しなくなり、
A5:SQL Mk-2を立ち上げ接続を試みると以下のエラーが表示されました。
Lost connection to MySQL server during query error on data reading from the connection.
ソケットが接続されていないか、sendto 呼び出しを使ってデータグラム ソケットで送信するときにアドレスが指定されていないため、データの送受信を要求することは禁じられています。
Socket Error Code: 10057
ソケットが接続されていないか、sendto 呼び出しを使ってデータグラム ソケットで送信するときにアドレスが指定されていないため、データの送受信を要求することは禁じられています。
Socket Error Code: 10057
ポート3306が別のプロセスに取られてる?と一瞬思いましたが全く関係ありませんでした。
対応
MySQLのサービスを起動したら直りました。
それだけです。
サービスはWindows10なら以下のように検索窓に「サービス」と入力すると簡単に表示できます。

Windows7なら コントロールパネル>管理ツール>サービス で表示されます。
サービスが表示されたら一覧から「MySQLxx」(xxはバージョン)というのを探します。
バージョンはご自身の環境に合わせて読み替えてください。
私の環境はMySQL57です。
一覧から見つけったらダブルクリックしてプロパティを開き「サービスの開始」をクリックします。
MySQLのサービスが開始されたら対応完了です。
これでA5やeclipseでもエラーなくMySQLに接続することができます。
まとめ
特に事前に何かしたわけでもないのに突然エラーが発生して困りましたが、サービス開始だけで直ってよかったです。
もしサービス開始しても直らない場合は違う原因だと思うので別の対応が必要になります。
以上、MySQLでいきなソケットエラーが発生した話でした。
スポンサーリンク