MySQLデータベースへの接続エラー


9

私のアプリケーションは、別のマシンのmysqlデータベースにかなり頻繁に接続する必要があります。ただし、接続時に頻繁にエラーが発生します。通常は最終的に接続できますが、何度も再試行した後です。私が得るエラーメッセージは:

Mysql.mysql(): Couldn't connect to SQL-server: Lost connection to MySQL server at 'reading authorization packet', system error: 2

私はここで情報を読みました:http : //dev.mysql.com/doc/refman/5.0/en/error-lost-connection.htmlとバグへのコメントhttp://bugs.mysql.com/bug .php?id = 28359

あなたが見ることができるように、中止された接続の数はかなりあります:

mysql> SHOW GLOBAL STATUS LIKE 'Aborted_connects';
+ ------------------ + ------- +
| 変数名| 値|
+ ------------------ + ------- +
| Aborted_connects | 2540 |
+ ------------------ + ------- +

タイムアウトを5秒から15秒に増やしました。

mysql>「connect_timeout」などの変数を表示します。
+ ----------------- + ------- +
| 変数名| 値|
+ ----------------- + ------- +
| connect_timeout | 15 |
+ ----------------- + ------- +

しかし、これは助けにはなりませんでした。これをデバッグする方法の提案はありますか?動作するまでに平均5回接続を試行する必要がある場合、データベースの相互作用が非常に遅くなります。

アプリケーションの存続期間中、接続を開いたままにしようとはしていませんが、それでいいですか?接続が閉じないようにするにはどうすればよいですか?

mysqlサーバーがDebian Linux上にある一方で、問題のあるコンピューターがWindows 7 32ビットである場合に役立ちます。


これは包帯にすぎないことはわかっていますが、バグレポートのURLには「connect_timeoutグローバル変数を30秒に増やすことで問題を回避しています」と記載されています。より高い値を試してみませんか?
JoseK

1
寒さは快適ですが、これはよく書かれた質問です。エリックS.レイモンドの記事の優れたフォロー... +1と幸運。
gWaldo

もちろん@JoseK私は試すことができますが、私は、私は5から15に増やすことで何の改善も見なかったとして、それが大きな違いを行います疑う
Zitrax

これは、値が0に設定されている場合に制限を設定しない変数の1つですか?
pjmorse

1
マシン間の接続になんらかの問題、おそらくネットワークの問題がないと確信していますか?
ワーナー、

回答:


2

すべてのバグの詳細を確認すると、ネットワークまたはクライアント側の問題があると思われるレポートがここにあります。何かが破損しているか、mysqlデータにレイテンシを追加しすぎています。

明確なネットワークで、wiresharkトレースを実行し、会話がどのようなものかを確認します。トラフィックシェーピングがどこでも行われていないことを確認します。64ビットの問題のようですので、32ビットのビルドをチェックして、同じ問題であることを確認してください。Windows XPのボックスをチェックしてください。M$は、Vistaのネットワークスタックにいくつかのファンキーな要素を追加しました。VistaとWin7マシンでのネットワーキングの問題に終わりはありません。

ワイヤーシャークのトレースを管理している場合は、ペーストビンを使用してリンクを貼ってください。


「64ビットの問題のようです」とはどういう意味ですか?これは32ビットインストールです。Vistaについては申し訳ありませんが、これはWin7です。説明を修正しました。
Zitrax、

私はwiresharkでのデバッグにあまり慣れていません。しかし、いくつかのことは私には奇妙に見えます。いくつかのredmarked RSTパケットとTCP再送信があり、一部のパケットの時間は、-257.3秒のように負になります。
Zitrax

別のスイッチを使用して、再テストしてください。あなたが持っている場合は別のメイク?ペーストビンまたはzipを作成して、wiresharkダンプを利用できるようにすることができれば、検討することができます...
Khushil

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.