概要
今までいくつかのDBクライアントを利用しましたが、中でもDBeaverが無料で使いやすかったです。 なので導入から簡単な使い方を紹介したいと思います。
DBeaver について
DBeaver についてです。




特徴
DBeaverは、開発者、SQLエンジニア、データベース管理者、アナリスト向けの無料のマルチプラットフォームデータベースツールを謳っています。 JDBCドライバーを備えたすべてのデータベースをサポートしており。80を超えるデータベースをサポートしています。
CE(無料版)とEE(有料版)があります。
対応DB
MySQL、PostgreSQL、SQLite、Oracle、DB2、SQL Server、Sybase、MS Access、Teradata、Firebird、Apache Hive、Phoenix、Prestoなどの一般的なすべてのデータベースをサポートしています。
EEバージョン(有償版)は、非JDBCデータソース(MongoDB、Cassandra、Couchbase、Redis、BigTable、DynamoDBなど)もサポートします。
対応OS
Windows / Mac / Linux でアプリケーションが提供されています。 また、Eclipseのプラグインとして動作させることも可能です。
利用環境
公式インストーラーにはOpenJDKが同梱されるため、通常はJavaを別途インストールする必要はありません。対応OSや同梱Javaのバージョンは更新されるため、導入時に公式Installationページを確認してください。
アーカイブ
過去のバージョンのアーカイブはこちらから取得できます。
インストール
インストールに関する情報はこちらに記載されています。
windows
Windowsの場合はMicrosoftStoreからインストール
https://www.microsoft.com/ja-jp/p/dbeaver-ce/9pnkdr50694p?rtc=1#activetab=pivot:overviewtab
zipでインストール
https://dbeaver.io/files/dbeaver-ce-latest-win32.win32.x86_64.zip
インストラーからインストール
https://dbeaver.io/files/dbeaver-ce-latest-x86_64-setup.exe
もしくは chocolateyでインストールできます。
choco install dbeaver
mac
Macの場合は
dmgからインストールする
https://dbeaver.io/files/dbeaver-ce-latest-macos.dmg
tarを解答してインストール
https://dbeaver.io/files/dbeaver-ce-latest-macosx.cocoa.x86_64.tar.gz
もしくは homebrew or mac portsでインストールします。
brew install --cask dbeaver-community
# or
sudo port install dbeaver-community
Linux
LinuxのDebianパッケージ版は
https://dbeaver.io/files/dbeaver-ce_latest_amd64.deb
RPMパッケージ版は
https://dbeaver.io/files/dbeaver-ce-latest-stable.x86_64.rpm
からパッケージを取得できます。
ダウンロードしたパッケージを使う場合は次のようにインストールできます。
# Debian / Ubuntu
sudo dpkg -i dbeaver-<version>.deb
# RPM系
sudo rpm -ivh dbeaver-<version>.rpm
Snapで実施する場合は
sudo snap install dbeaver-ce
コネクションの作成
「New Connection Wizard」ボタンをクリックします。

Data Base -> New Connection を選択します。

メニューバーから File -> New を選択します。

DataBase Connection を選択し次に進みます。

任意のデータベースを選択します。

詳細な接続情報を入力します。例えばMySQLの場合はホスト、ポート、データベース、ユーザ・パスワードを入力します。他の多くのDBも同じような接続情報を入力します。

SSHを利用した接続も可能です。
安全な接続設定
- 本番DBへは可能なら読み取り専用ユーザーで接続する
- パスワードを共有せず、ユーザーごとに監査できる認証情報を使う
- インターネットへDBポートを直接公開せず、VPNやSSHトンネルを使う
- TLSを有効化し、サーバー証明書を検証する
- 接続名に
productionなど環境を明記し、色分けして誤操作を減らす - 自動コミットの状態を確認し、更新系SQLはトランザクション内で実行する
DBeaverは接続ごとにConnection typeを設定でき、開発・テスト・本番を色で区別できます。SQL実行前に接続先ホストとデータベース名も確認してください。
SQLを実行する
エディタからスクリプトを流し込み実行することができます。

SQLエディターは、上部にスクリプトのパネル、下部に結果パネルで構成されています。
複数文を含むスクリプト全体の実行と、カーソル位置にある1文だけの実行はショートカットが異なります。意図しないUPDATEやDELETEを避けるため、実行対象のハイライトと件数条件を確認してください。最初にSELECTで対象を確認し、必要ならトランザクションを開始してから更新します。
よくあるトラブル
ドライバーを取得できない
初回接続時にJDBCドライバーがダウンロードされます。社内Proxy環境では、DBeaverのNetwork Connections設定にProxyを登録するか、社内で許可されたドライバー配布方法を利用します。
タイムゾーンや文字コードがずれる
クライアント、JDBCドライバー、DBサーバー、セッションの設定が一致しているか確認します。接続プロパティで一時的に回避する前に、どの層で変換されたかを切り分けます。
接続できない
ホスト名、ポート、データベース名、認証方式に加えて、DNS、ファイアウォール、セキュリティグループ、VPN、TLS証明書を順に確認します。SSHトンネル利用時は、DBのホスト名が「手元から見た名前」ではなく「SSH接続先から見た名前」になる点にも注意します。
その他
CloudBeaverについて
CloudBeaver は2020年に公開された、Webインタフェースを提供するSQLデベロッパーツールです。