8

更新: 問題は修正されました。


実行に 99,999 秒以上かかるクエリを実行したいと考えています (例: SELECT SLEEP(150000);)。MySQL Workbench でタイムアウトを変更するには、Edit → Preferences → SQL Editor → DBMS connection read time out (in seconds)に移動する必要があります。ただし、このDBMS connection read time outフィールドは最大 5 つの数値しか受け入れず、フィールドを 0 に設定すると、デフォルトのパラメーター (600 秒) と同等になります。クエリにタイムアウトよりも時間がかかる場合、次のエラー メッセージが表示されます。Error Code: 2013. Lost connection to MySQL server during query

したがって、私の質問: この制限を 99,999 秒以上に増やすことは可能ですか? MySQL Workbench 5.2.47 CE で Windows 7 64 ビット Ultimate を使用しています。

DBMS connection read time outフィールド :ここに画像の説明を入力

タイムアウトの問題 (0 はデフォルトのパラメーター (600 秒) に相当します): ここに画像の説明を入力

4

3 に答える 3

1

この問題は MySQL Workbench 6.0.3 (2013-07-09) で解決されました:バグ レポート変更ログを参照してください。

于 2015-11-03T03:20:16.853 に答える
1

ヨーロッパでは、カンマを小数点記号と見なしています。あなたは実際に100k秒を意味していましたか?コメントで、50 GB を処理していることがわかります。それでも、1 時間以上必要な場合は、Indeces を見逃したことになります。単一のクエリでは適切に再構築されないことを知っておく必要があります。そのため、大量の挿入に参加すると、スキャンされた行のデカルト積が得られます。つまり、クエリが数週間または数か月にわたって実行される可能性があります。

解決:

  1. 基本データを入力し、ここでは結合を使用しません。
  2. テーブルを変更してインデックスを設定します。
  3. 走るANALYZE <tablename>
  4. 他のすべてを行います。

この手順に従うのが難しいと思われる場合は、クエリの先頭にEXPLAINキーワードを追加して、結果を投稿してください。

(30分ごとに約80GBをインポートするcronjobがあります-MySQLはこれを確実に処理できます。)

于 2013-06-01T22:45:54.110 に答える