Oracle タイムアウトを抑制してOBを快適に使おう

 2019.10.21  株式会社システムインテグレータ

サーバやハードウェアの設定により、SI Object Browser(以下、OB)でDB接続後しばらく放置するとタイムアウトが発生する、という事例を耳にします。
本番環境での使用においてはセキュリティの観点からタイムアウトしたほうが良いように思います。
しかし、開発環境ではストレスなく使用したいですよね?

サーバやハードウェアの設定はおいそれと変更できないかもしれませんが、OBにはタイムアウトを抑制するための仕組みがあります。
今回はタイムアウトを抑制して快適にOBを使うための方法を紹介したいと思います。

タイムアウト抑制の設定

さっそく設定画面を開いてみましょう。
OBの[ツール]メニューから[オプション]を開き、[詳細設定2]タブを選択します。

Oracle タイムアウトを抑制してOBを快適に使おう 1- オプション画面 – 詳細設定2タブ -

上部の[キープアライブ]がタイムアウト抑制の設定です。
キープアライブの名前の通り、一定間隔で通信(クエリ発行)を行うことでタイムアウトを抑制する仕組みとなっています。

初期状態では[キープアライブ]チェックがOFFとなっていますので、これをONにするとキープアライブが有効になります。
キープアライブを有効化すると、[n秒に一回キープアライブを実行してセッションが切断されないようにする]で指定した間隔ごとに通信(クエリ発行)が発行される動作となります。

なお、ここで発行されるクエリとは “SELECT 1 FROM DUAL”と簡易なものになっています。

タイムアウト抑制の設定 – スタンバイモード

お気づきの方もいらっしゃると思いますが、キープアライブの設定にはもう一つ[スタンバイモードを無効にする]というオプションがあります。

これは、いわゆるOSのスリープやロックに対するオプションとなります。
キープアライブを設定すると、指定した間隔ごとにクエリ発行を行いタイムアウトになることを予防することができますが、OSが自動的にスタンバイ状態になってしまうとキープアライブが動作しなくなってしまいます。
そうすると、スタンバイ状態から復帰した後に接続がタイムアウトしてしまいます。

そこで[スタンバイモードを無効にする]をONにしておくと、キープアライブと同様に一定間隔ごとにOSのアイドリング時間をリセットし、自動的にスタンバイ状態とならないよう抑制を行います。

まとめ

いかがでしたか?
今回はタイムアウトを抑制するためのキープアライブの設定、およびOSのスタンバイモードの無効化について解説を行いました。

ただし、冒頭にも記載した通り本番環境に接続する際はセキュリティの観点からOFFにしたほうが無難かと思いますので、使いどころに気を付けてご利用ください。


RELATED POST関連記事


RECENT POST「【OBトコ】OBを便利に使おう」の最新記事


【OBトコ】OBを便利に使おう

【待望のMySQL対応!】SI Object Browser for MySQL リリース

【OBトコ】OBを便利に使おう

【Oracle 23aiに対応!】SI Object Browser for Oracle 24.1の新機能

【OBトコ】OBを便利に使おう

【生成AI連携の強化!】SI Object Browser for Oracle 24の新機能

【OBトコ】OBを便利に使おう

【ChatGPTでSQL整形!】SI Object Browser for Oracle 23.1の新機能

Oracle タイムアウトを抑制してOBを快適に使おう
新規CTA