業務でDBeaverを利用しはじめて半年程度です。便利に使っています。
設定を見直したメモです。
Edit Connection
Connectionごとの設定です。
Auto-commitを無効化
Isolation Levelを適切に設定
私の場合、普段は Read Commit
に設定しています。手動でDBを更新することがないため、常にアプリケーションの一連の処理が終わった状態を参照したいからです。
メンテナンスなどで手動で更新する必要がある場合のみ、 Serializable
に設定します。メンテナンスでは全件取得 → WHERE句が同じ状態で UPDARE のような手順を取ることがあり、その間に行数が増減するのを防ぐためです。
Connection type
Security
影響の大きい環境では Read-only connection
に設定します。こうすることで、UPDATEやDELETEの誤爆を防げます。
Preference
全体で共通の設定です。
Preference > DBeaver > Connection Types
普段からトランザクションに慣れておきたいので、Development環境でも Auto-commit by default
はOFFにしています。
その代わり、Confirm data changes
はDevelopmentではオフにします。どちらもオンだと、DevelopmentとProductionの間違えに気がつくきっかけが減ってしまうと考えているためです。
Preference > DBeaver > Editors > SQL Editor
Connect on editor activation
をオフにして、 .sql
ファイルを開いた際の接続先を明示的に指定するようにします。
Preference > DBeaver > Transactions
Auto Commit
をオフにしていれば無意味なのですが、万一 Auto Commitがデフォルトでオンになっていた場合に備えて Return to auto-commit on transaction end
を無効化します。
JVM起動時のオプション
Timezone を UTCに変更
/Applications/DBeaver.app/Contents/Eclipse/dbeaver.ini
に -Duser.timezone=GMT
オプションを追加します。時刻が勝手にJSTで表示されるのはハマるのでおすすめできません。
-vm
../Eclipse/jre/Contents/Home/bin/java
(省略)
-Xms64m
-Xmx1024m
-XstartOnFirstThread
-Duser.timezone=GMT
その他
ショートカット読み込んでおくと業務効率が上がりそうですね。
素晴らしいまとめがあったのでリンクをご紹介。
https://wonwon-eater.com/dbeaver-shortcut