最強のSQLクライアント(GUIツール)「TeamSQL」を使ってみた!

     - データベース, 開発ツール , , ,  


はじめに

みなさんこんにちは、プロダクト開発本部の亀梨です。
普段はXmediaOneというメディアプランニング・広告運用管理・トラッキング・マーケティング分析を行う
統合プラットフォームの開発を担当しています。

エンジニアの皆さん、SQLクライアント(GUIツール)って何使ってます?

わたくしはこれまでデータベースの種類に応じて様々なSQLクライアント(全て無料)を使ってきました。

  • PostgreSql -> pgAdmin・Postico・PG Commander
  • MySQL -> Sequel Pro
  • Redis -> Medis

といった感じです。PostgreSQLはPosticeをメインに使用しているのですが、無料版は接続先が9つと限られているので他のも併用しています。というわけで常時4つ程度のクライアントを使い分けているわけです。手間だし、面倒だし、PCにも優しくない。。。なんとかしたいなぁ。。。

そんなあなたに朗報!TeamSQLがやってきた!!

というわけでTeamSQLの紹介です。まずはサイトをご覧あれ!
TeamSQL – Cross-platform SQL Client

はい、シュッとしたサイトですね。もうこの時点で好きです(笑)。
そして大きな文字で目に飛び込んでくるキャッチコピーがTeamSQLの最大の魅力「Cross-Platform SQL Client」です。
Cross-Platform、つまり、データーベースの種類に関係なく横断的に使えるSQLクライアントっていう意味ですね。

はい、この時点で最初に書いたわたくしの悩みは万事解決!めでたしめでたし♫
…なのですが、それでは紹介したことにならない(笑)ので、これからこのツールの魅力を4点に分けて詳しく書いていきます。

TeamSQLの魅力

その1:DB横断で使える!接続数に上限無し!!そして無料!!!

先に書いたとおり、DBの種類に関係なく接続ができます。公式サイトには…

と既に主要なDBはほぼカバーしており、使えるDBは順次拡大予定とのこと。
ちなみにわたくしのTeamSQLインストール前のMacのDockはこんな感じ。

そしてTeamSQLのDockはこんな感じ。

だいぶスッキリしました。目にもPCにも優しいです(笑い)。
というわけでクロスプラットフォームなTeamSQLですが、これが接続数無制限でしかも無料で使えるなんて、どうかしてるぜ!!!(古)

注意点

TeamSQLは他のSQLクライアントと同様SSHトンネルが設定できるのですが、現在はバグが発生しておりSSHトンネリングが使用できません(;_;)

すでにわたくしが開発元にGitHubでissueを投げておりますが、修正アップデートされるのはもうしばらく先かもしれません。
なので現状は商用環境では実質まだ使えない感じですかね。。。

その2:UIが洗練されてる!

SQLクライアントには珍しく、イケてるUIになっています。こちらがトップ画面。

クエリ入力・結果表示エリアがあって、左側に各機能タブがコンパクトに並んでおり、接続先表示エリアでは接続先ごとにDBのアイコンが表示されてて分かりやすい。本番環境の接続先には「PROD」と表示できるのも気配りが効いてます。あとメニュータブの大きさや全体のカラーデザインは選べるようになっているようになっています。

素晴らしいUIだなぁ。。。あれ、でもこんな感じのUI外でも見たことあるような。。。
.
.
.
あっ!VS Codeだ!酷似!!(笑)。

というわけで普段VS Code使ってる方は馴染みやすいかと^^;

その3:クエリ実行履歴が見やすい!予めクエリを保存・管理できる!

お次は履歴画面。こんな感じです。

はい、非常に見やすいです。履歴をクリックすると右側に実行結果が表示されます。
続いてクエリ管理画面はこちら。

予め作成したクエリを保存しておけます。フォルダ分けして管理も可能です。
しかもこのクエリはクラウドで他のユーザーと共有可能なんだとか!わんだふぉー!!

その4:拡張機能がどんどん追加される!

拡張メニューの画面はこんな感じです。

さまざまな機能が拡張できるのが便利ですね。
たとえばSELECT実行結果をGoogleスプレッドシートに投入するとか。至れり尽くせり。

まとめ

というわけで、簡単ではありますが魅力を紹介させていただきました。
これからわたくしもTeamSQLを使い倒していきたいと思います。同じようにSQLクライアントについて悩みを持っている方、どのクライアントを使おうか迷ってた方、ぜひ一度インストールして使ってみてください。それではまた!


DACエンジニア採用情報

  関連記事

自社サービスのDocker化(前編)

こんにちは。 インフラ開発部の上田です。 普段は自社開発システムのインフラ担当として、日々頑張って仕事をしています。 今回は、近年話題になっているDockerについて、取り上げてみようと思います! なぜDockerなのか・・・? そもそもDockerとは何か・・・?   当社では様々なサー …

いまさらですが… GNU screen チートシート

最近はローカル環境で開発するようになってきたので、screen コマンドを使う機会も少なくなって来たような気がします。で、使ってないと忘れてしまうので、チートシートを作ってみました。 参照サイト GNU screen [quick_reference] 起動 コマンド 動作 screen -S &l …

Charlesを使ってスマホアプリ(iOS)のUAを調べてみた

はじめに ここ最近のスマホアプリには、Webブラウザの機能を実装したものが少なくありません。 (“スマホアプリ内で立ち上がるブラウザ「アプリ内ブラウザ」”の機能は「WebView」というコンポーネントを用いて実装されています。) 昨今のWebサイト、サービス運営に於いて、「通 …

【小ネタ】タスク管理ツール移行: Trello から Asana

  プロジェクトチームのタスク管理ツールを Trello から Asana に変えることになり、 タスクの移行が意外と簡単にできた、というお話です。 Trello と Asana もともと使っていたのは Trello(トレロ)です。 プロジェクト > タスクグループ > タスク …

Vagrantの機能を使って開発環境の効率をあげてみた。

プラットフォーム・ワンのシステムの運用・保守担当のエンジニアです。 保守の仕事に関わると、 ユーザからのお問い合わせだったり、監視アラートによる検知から システムを調査することがあります。 ログとソースコードを見て、不具合を特定し改修する。 すぐできればカッコいいですが、 「本番環境に反映して別のエ …

Android 非同期処理についてまとめてみた

Androidには、UIに影響を与えないよういくつか非同期処理が用意されています。 今回は非同期処理の代表的な ・Service ・IntentService ・HandlerThread について違いを踏まえながらまとめます! 非同期処理について(http://codezine.jp/articl …

クラウド電話API “Twilio”で起こされてみた

どうも、開発部のクラヴマガです。 弊社サービスも最近はAWSの様なクラウド環境でサービスを構築することが多くなりました。 そこで問題になるのが、障害などによる深夜対応・・・。 データセンターに物理サーバをおいていた頃は、データセンターから障害発生時に 電話連絡をもらっていたのですが、クラウド環境では …

x-callback-urlを使ってみた

x-callback-urlとは? iOSのアプリ間連携の仕様の一つみたいです。簡単に言うと、ディープリンクを行うためにカスタムURLスキームを利用するが、アプリ毎にバラバラな規則でURLスキームを設定するとアプリ間連携をスムーズに行うことができないため、どのような規則でURLスキームを設定するかを …

Treasure Dataで大規模なマスタデータを扱う際にはtimeカラムインデックスを活用しよう

DACではTreasure Dataを利用して各種データの蓄積や集計を行っています。Treasure Dataは時系列のデータを扱うのに特にすぐれたアーキテクチャなのですが、セグメントIDとユーザーIDの組み合わせといった大量のマスタデータを利用した計算にも利用することもできます。そのような場合にt …

【クラウド初心者向け】Google Cloud Platform(GCP)でWebサイトを公開してみよう!

はじめに みなさんこんにちは、プロダクト開発本部の亀梨です。 普段はXmediaOneというメディアプランニング・広告運用管理・トラッキング・マーケティング分析を行う 統合プラットフォームの開発を担当しています。 背景 わたくしは最近プライベートで開発したWebサービスをインターネット上に公開しまし …