DataGripを使おう #JetBrains
JetBrains アドベントカレンダー 17日目です。
今年はJetBrainsの製品をたくさん使いました。
RubyMine
WebStorm
PhpStorm
IntelliJ Ultimate
ReSharper Ultimate
ざっと数えただけでもこんだけあります。
でも今年一番「こいつぁすげぇ・・・」ってなったのは
DataGrip
なんです。
日本語の記事が全然なくて最初セットアップに手こずったのでそれをさらっと書いてみます。
環境
サーバー側
CentOS 7.4.1708
MySQL 5.6
クライアント側
Windows10 Pro
DataGrip 2017.3
環境はVagrantで建ててます。
今回はサンプルで建ててるのでrootで接続したりしています。
MySQLに外部接続の設定を追加する
MySQLで
GRANT ALL PRIVILEGES ON *.* TO root@"192.168.33.1" IDENTIFIED BY 'pass' WITH GRANT OPTION;
192.168.33.1から全権限の付いたrootにログインを許可してます。
パスワードはpassにしてます。
本当はこんな強力な権限ダメなんですがDataGripお試しということでこの設定でいきます。
データベースに接続する
起動してまずはメニューバーのview→Tool Windows→Databaseを選択します。
(Alt+1でも出ます。)
左にサイドバーが出たと思います。

画像赤枠のプラスマークを押してData Suorce→MySQLと選択します。

赤枠を編集しておきます。
ここでJDBCがインストールされていない場合、画像で「no objects」と表示されているあたりに「ダウンロードしますか?」的なメッセージが出るのでダウンロードしてください。
Host
MySQLのサーバーのIP
Port
MySQLのサーバーのPort。MySQLのデフォルトのポートは3306。
Database
接続したいデータベース名。今回はRailsで適当に作ったデータベースを操作します。
User
前述の手順で設定したユーザー名です。今回はroot
Password
今回は前述の手順で設定した pass
ここまで埋めたらTestConnectionを押して下さい。
Success!と出たら成功です。
出なかったらSELinuxなりFirewallなりを確認して下さい。

接続できるとこんな感じでテーブルとか見れると思います。
基本的な使い方
SQLを書くときは左のサイドバーの黒いコンソールアイコンをクリックして下さい。
そうすると新しいタブでSQLが書けます。
JetBrainsの強力な補完機能もCtrl+Spaceで使えます。
実行はCtrl+Enterで実行できます。

この画面でモリモリSQL書いてコードに落とし込むって使い方もありだと思います。
Tableの追加もvagrant_developmentを右クリックでNew→Tableから追加できます。

おわりに
え、これで終わり?
って感じになってしまいましたがぶっちゃけ高機能過ぎて事細かく書いちゃうとめちゃめちゃ記事長くなるので基本の基だけ抑えました。
ぶっちゃけエンジニア以外にもおすすめできる製品です。迷わずクエリがサクサク書けるのはめちゃくちゃ強いです。
コードを書くわけではないけどデータベースを触る便利なツールを探してる人にもおすすめです。
既存のデータベース移行の際に使ったんですが、ExportしたSQLファイルを編集するときも活躍しました。
この設定方法はRubyMineやPhpStormのデータベース設定にも応用できます。
この記事を読んでもっとこのツールに触れる人が増えてくれればなと思います。