JetBrains
datagrip
JetBrainsDay 17

DataGripを使おう

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でも出ます。)
左にサイドバーが出たと思います。
dg.PNG
画像赤枠のプラスマークを押してData Suorce→MySQLと選択します。
dg2.PNG
赤枠を編集しておきます。
ここでJDBCがインストールされていない場合、画像で「no objects」と表示されているあたりに「ダウンロードしますか?」的なメッセージが出るのでダウンロードしてください。

  • Host
    • MySQLのサーバーのIP
  • Port
    • MySQLのサーバーのPort。MySQLのデフォルトのポートは3306。
  • Database
    • 接続したいデータベース名。今回はRailsで適当に作ったデータベースを操作します。
  • User
    • 前述の手順で設定したユーザー名です。今回はroot
  • Password
    • 今回は前述の手順で設定した pass

ここまで埋めたらTestConnectionを押して下さい。
Success!と出たら成功です。
出なかったらSELinuxなりFirewallなりを確認して下さい。

dg3.PNG

接続できるとこんな感じでテーブルとか見れると思います。

基本的な使い方

SQLを書くときは左のサイドバーの黒いコンソールアイコンをクリックして下さい。
そうすると新しいタブでSQLが書けます。
JetBrainsの強力な補完機能もCtrl+Spaceで使えます。
実行はCtrl+Enterで実行できます。
dg4.PNG

この画面でモリモリSQL書いてコードに落とし込むって使い方もありだと思います。

Tableの追加もvagrant_developmentを右クリックでNew→Tableから追加できます。
dg5.PNG

おわりに

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