0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

H2 Databaseのコンソールタイムアウト(セッションタイムアウト)を設定する

Last updated at Posted at 2019-10-21

TL;DR

  • H2 DatabaseのWebコンソールのセッションタイムアウトは、デフォルトで30分
  • これを延長する場合は、システムプロパティh2.consoleTimeoutで秒数を指定する

コンソールタイムアウト

H2 Databaseを起動すると、http://localhost:8082でアクセス可能なWebコンソールが起動します。

これのことですね。

image.png

このセッションタイムアウトは、デフォルトで30分になっています。

人によっては、短いと感じるかもしれません。少し放置する時間があって、タイムアウトするとそれまで書いていたクエリがなくなったりするわけです。

h2.consoleTimeoutを設定する

Webコンソールのタイムアウトを設定するには、CONSOLE_TIMEOUTを設定すればよいみたいです。

SysProperties

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)
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?