TL;DR
- H2 DatabaseのWebコンソールのセッションタイムアウトは、デフォルトで30分
- これを延長する場合は、システムプロパティ
h2.consoleTimeout
で秒数を指定する
コンソールタイムアウト
H2 Databaseを起動すると、http://localhost:8082
でアクセス可能なWebコンソールが起動します。
これのことですね。
このセッションタイムアウトは、デフォルトで30分になっています。
人によっては、短いと感じるかもしれません。少し放置する時間があって、タイムアウトするとそれまで書いていたクエリがなくなったりするわけです。
h2.consoleTimeout
を設定する
Webコンソールのタイムアウトを設定するには、CONSOLE_TIMEOUT
を設定すればよいみたいです。
デフォルトは1800000
で、実際にシステムプロパティとして指定する時はh2.consoleTimeout
を指定します。
SysProperties
のプロパティのid
が、このキーになっていましたね、記事を書いていて気づきました。
https://www.h2database.com/javadoc/org/h2/engine/SysProperties.html#h2.consoleTimeout
これを、H2 Databaseの起動時にシステムプロパティとして指定します。
指定方法は、こちらを参考に。
Settings Read from System Properties
H2 Databaseのバージョン1.4.200で実行しました。
$ java -cp bin/h2-1.4.200.jar -Dh2.consoleTimeout=[秒数] org.h2.tools.Console
以下は、デフォルト値の30分(1800000秒)を明示的に指定した例です。
$ java -cp bin/h2-1.4.200.jar -Dh2.consoleTimeout=1800000 org.h2.tools.Console
これで、コンソールのタイムアウト(セッションタイムアウト)を変更することができるようになります。
確認に使用したJavaのバージョンは、こちらです。
$ java -version
openjdk version "1.8.0_222"
OpenJDK Runtime Environment (build 1.8.0_222-8u222-b10-1ubuntu1~18.04.1-b10)
OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)