MySQLの大規模なログテーブルに関する統計情報を取得しようとしています。いくつかの選択クエリは、完了までに時間がかかりすぎて例外が発生しています。
原因:java.sql.SQLException:ロック待機タイムアウトを超過しました。トランザクションを再起動してみてください
これにより、アプリケーション全体が同じエラーで処理を停止しています。いくつかの研究の後で、私たちのMySQLサーバ設定の変数 'innodb_lock_wait_timeout'を変更することにしました。MySQLのinnodb_lock_wait_timeoutの値が高い
しかし、この設定変更の欠点は何ですか?
実際、私の質問はこの問題ではありませんでした。テーブルのロックケースも当てはまります。タイムアウトを増やすと、テーブルのロック時間も長くなります。私たちはミリ秒単位で実行するようにクエリをチューニングすることで問題を解決しました。この知識によって、いくつかのバグを予知できます。ありがとうございます。 – xarion