加藤です。普段、DBクライアントツールはSequel Proを使っています。 アームズ社内でもパンケーキと呼ばれて愛されて(?)いるのですが、正規版は2016年3月の1.1.2リリース以来開発が止まっている、MacOSをMojaveにアップデートするとクラッシュする、MySQL8.0の認証に対応できない等々の不安要素があることを知りました…。
また、最近システムチーム内で「カラム単位でSQLダンプできるDBツールがあるといいのに」という要望が浮上しました。 ある時にMySQLのvirtual generatedカラムを使ったところ、Sequel Proがテーブル単位でしかエクスポートできなかったため生成したSQLファイルをそのままインポートすることができず、INSERT文を手作業でぽちぽち編集してインポートし直さなければならない羽目になったことがきっかけです。
以上の経緯により、Sequel Proの後継として良さそうなDBツールがないだろうかと調査をしてみました。 今回はそのことを記事にしたいと思います。
ツール要件まとめ
- Mac対応のDBクライアントツール
- GUIベースで視覚的に操作(追加、編集、削除etc)ができる
- 無料で使える
- 継続的にバージョンアップがリリースされている
- MySQL8.0に対応
- MySQL以外のDBもサポート
- カラム単位でSQLダンプできる
「Mac SQL クライアントツール」をキーワードに情報を集めたところ、上位に「TablePlus」「DBeaver」の名前をよく見かけたため、この2つのツールを実際に導入して雑感をまとめました。
(1)TablePlus トライアル版 Version 3.1.0
要件の評価
- Mac対応のDBクライアントツール:○
- GUIベースで視覚的に操作(追加、編集、削除etc)ができる:○
- 無料で使える:○
- 継続的にバージョンアップがリリースされている:○ Build 290 - 18 January 2020(本記事投稿時点)
- MySQL8.0に対応:○
- MySQL以外のDBもサポート:○
- カラム単位でSQLダンプできる:○
ここがよかった!
- UIがシンプルで。後述のDBeaverより直感的に操作ができる。
- SQLエディタがとても見やすく使いやすい。オートコンプリートやフォーマット機能に感動。
- 操作履歴をHistoryに自動で蓄積してくれる。
- よく使うクエリはHistoryからAdd to Favoriteするとお気に入りとしてQueriesに登録でき、再入力の必要がない。
- カラム指定のSQLダンプというまさにやりたかったことができた。
- プラグインのDumpTableをインストールすればlaravelのmigrationのコードを自動で生成してくれる。
ここがイマイチ…
- メニューが英語なので最初は少し戸惑う。
- トライアル版ではタブを2つまでしか開けない&データフィルタも2つまでしか設定できないのが不便。増やしたい場合は有料版を購入する必要がある。
(2)DBeaver Community Edition 6.3.4
要件の評価
- Mac対応のDBクライアントツール:○
- GUIベースで視覚的に操作(追加、編集、削除etc)ができる:○
- 無料で使える:○
- 継続的にバージョンアップがリリースされている:○ 6.3.4 - February 2nd, 2020(本記事投稿時点)
- MySQL8.0に対応:○
- MySQL以外のDBもサポート:○
- カラム単位でSQLダンプできる:×
ここがよかった!
- アプリケーションもインストーラーも日本語メニューに対応。
- タブ数の制限なし。
- ER図が自動で作成できる。
- エディタで作成したSQLクエリをScriptにファイル保存しておくことができる。
- 微妙な顔のビーバーが可愛い(個人の感想です)
ここがイマイチ…
- ストレスを感じるほど動作がもったりしているわけではないが、TablePlusと比較するとやや重ため。
- Sequel ProもTablePlusもシンプルなデザインだったせいか、アイコンが多くて少しごちゃごちゃしている感じがする。多機能な分、把握するまで時間がかかりそう。
- SQLダンプ機能に関してはDB単位かテーブル単位。ダンプもINSERT文のみ。残念。
補足
Sequel Proも完全に終わってしまっているというわけではなく、テストビルド版は動いています。 sequelpro.com
こちらを導入することで冒頭で挙げた問題にも対応できますので、正規リリース版ではないことを承知で使うのもありです。
まとめ
個人的にはこれまでのSequel Proの操作性を気に入っていたので、インターフェースがシンプルなTablePlusがよいのかなぁというイメージです。 ですが、メニューの英語と、コミュニティ版の制限がネックになりそうです。ライセンス版を導入するとどうなるかの調査も必要そうですね。
DBeaverも本当に無料なのか疑いたくなるぐらい充実していて驚きました。使うには少し慣れが必要そうだな…という印象です。
今回は以上です。