MySQLの公式ツール MySQL Workbench Communityエディション (以下MySQL Workbench)とJetBrains製品のデータベース統合環境 DataGrip の比較記事です。
開発の際に個人的に使うことのある機能を比較しており、全機能は対象としていません。
TL;DR
クエリを書くときは多機能かつ高機能の DataGrip が便利だが、
DB設計の際に使うツールとしては MySQL Workbench が良い
基本的な情報
2019年3月時点での情報
MySQL Workbench | DataGrip | |
---|---|---|
接続・操作可能なDB | MySQL | MySQL、PostgreSQL、Microsoft SQL Server、Oracleなど |
使用可能なOS | macOS, Windows,Linux | macOS, Windows,Linux |
価格 | 無料 | パーソナルライセンスで1年目は$89(公式ページ) |
備考 | IntelliJ IDEA, PhpStormなど他のJetBrainsのIDEでもDataGripと同様の機能を使うことができるようです(DataGrip FAQ) |
エディタ
※良いと思う方を赤字にしてます
MySQL Workbench | DataGrip | |
---|---|---|
コード補完 | レスポンス速度は少し遅く、補完されないときもある![]() |
レスポンス速い![]() 結合句も自動生成可能 ![]() FROM句を先に書くには後置コード補完が役に立つ ![]() |
スニペット | スニペットリストに登録すれば右クリックで張り付け可能 | ライブ・テンプレートで自由に追加可能。特定ワードを入力してtabを押すだけで自動的にテンプレートが挿入される![]() |
コードフォーマット | ユーザーが可能な設定はキーワードの大文字化・小文字化のみ |
様々な設定が可能![]() |
実行計画 |
![]() (SQL詳しくない人に説明しなければならないときには画像のほうが伝わりやすい印象) ![]() |
表形式でのみ表示可能![]() |
データベース設計・管理
MySQL Workbench | DataGrip | |
---|---|---|
リバースエンジニアリング(DB->ER図) | コメントを付けることができて、pngやUMLで出力することが可能![]() |
コメントだけでなくLayerを設定することが可能 数十個以上あるテーブルを整理する場合などに便利 ![]() |
フォワードエンジニアリング(ER図->DB) | 非対応 そのためER図上でテーブル追加などは不可能 (一応4年前から要望は出ている様子) |
テーブル追加などER図上で行った変更をDBに反映することが可能 直接反映するだけでなくSQLファイル化できるのでチーム連携が容易 |
バックアップ(mysqldump) | 可能 | 可能 |
リストア | 可能 | 可能 |
その他
- MySQLWorkbenchは挙動が怪しいことが割とある
- Macでカーソル入力が思い通りにいかないことがある(上を入力すると下に動いたり)
- 突然落ちて起動できなくなる
- バグの報告先
- MySQLWorkbenchは https://bugs.mysql.com/
- DataGrip は https://youtrack.jetbrains.com/issues/DBE
- どちらも英語入力&既出でないことの確認必要