MySQL Workbenchは、MySQL公式のGUIツール。
GPLライセンスにて、無料でダウンロードして使用可能です。
MySQLデータベースと接続して、SQLの組み立てが出来るほか、サーバ起動・シャットダウン・ステータス確認などの監視機能、テーブル情報からER図を作ったり、データのExport、Importがおこなえるなど管理者向け機能が充実しています。
MySQL WorkBenchのダウンロード、インストール
下記のページからダウンロード可能です。
MySQL :: Download MySQL Workbench(MySQL公式サイト)
Windows(32ビット、64ビット)のほか、Ubuntu、Red Hat Enterprise Linux、Oracle Linux、Fedoraなどの各Linux、macOSにも対応。ソースコードも提供されてます。
なお、ダウンロードにはアカウント作成後(無料で作成可)、ログインする必要があります。
2019年11月現在の最新版は、MySQL Workbench 8.0.18 CEです。
Windows版のインストーラを実行すると、下記の画面が表示されます。Nextをクリックします。
インストールパスを変更する場合は、この画面で指定します。そのままで良い場合はNextをクリックします。
全部インストールするか、一部を選んでインストールするかを選ぶ画面です。MySQL Workbenchの場合は、「本体」「ショートカット」の2ファイルのみなので、Completeを選んで問題ないでしょう。Nextをクリックします。
インストール開始の最終確認です。Installをクリックすると、MySQL Workbenchがインストールされます。
MySQL WorkBenchの日本語化方法
MySQL WorkBenchは英語版のみです。以下のファイルを書き換えることでメニューを日本語化可能です。(デフォルトパスにインストールした場合)
書き換えを行う場合は、念の為オリジナルのファイルをmain_menu.xml.orgなど名前を変えてバックアップを取っておくと良いでしょう。
C:\Program Files\MySQL\MySQL Workbench 8.0 CE\data\main_menu.xml
以下のサイトにて、書き換え済みのファイルを公開されていました。
参考)JJ1RLWのXOOPS Cube Siteにようこそ – ダウンロード
ダウンロード済みのファイル名の拡張子をzipに変更し、展開するとmain_menu_jpn.xmlが現れます。main_menu.xmlにリネーム後、上記のパスに上書きすることで日本語化が確認できました。
メニューはある程度日本語化できましたが、テーブル名やカラム名に日本語が含まれている場合は、文字化けしてしまいます。
オプションでFont指定を変更することで、日本語表示が可能です。
Edit→Preferences(日本語化後は、編集→オプション)を指定し、AppearanceのFonts→Configure Fonts For:の項目をJapaneseに変更し、OKをクリックします。
MySQL WorkBenchの使い方
テーブル一覧から、SQLを作成する
MySQL WorkBenchは操作性に少々クセがあり、初見だと戸惑う部分があります。データベーステーブル一覧から簡単なselectをおこなうSQL文を作成してみましょう。以下、日本語化済みを前提に解説をおこないます。
なお、データベースとして、MySQLのサンプルデータベースEmployeesを作成済みです。
MySQL Workbenchを起動し、上部メニューのデータベース→DBを検索を選択します。
接続先のデータベースを選択します。
新規Queryタブが開きます。
employeesデータベースから、employees→Columns上で右クリックし、Send to SQL Editor→Select All Statementを選択します。
なお、データベース情報が表示されるサイドバーが表示されていない場合は、上部メニューの表示→Panels→Show Sidebarを選択します。
クエリの編集エリアにselect文が生成されました。
上部メニューのクエリ→実行を選択するか、Ctrl+Shift+Enterを押すとSQLが実行され、結果が表示されます。
クエリ編集画面には整形機能があります。下記のアイコンをクリックすると、編集中のSQLが整形されます。
ただし、MySQL Workbenchの整形機能はイマイチな印象で、複雑なSQLには適用できませんでした。
整形目的には、別のツールを併用するのが良いでしょう。
【関連記事】
▶SQL 整形ツール 美しいコードが出力できるテキストエディタはどれ?
MySQLサーバ管理機能
MySQL Workbenchは、開発者向けの機能よりもデータベース管理者向けの機能が充実しています。
上記の画像は、Server→Dashboardから呼び出せます。
サーバのネットワーク、キャッシュの利用率、クライアントからのコネクション数、実行されているSQL文の頻度、データベース領域の使用率、トランザクションログの発生頻度などを1画面で見ることができるんですね。
サーバの起動、停止やデータのExport、ImportもGUIから実行可能です。
このため、お客様にMySQLを組み込んだシステムを導入する場合など、データベース運用者向けにコマンドベースの手順書を用意しなくても済みます。
ER図とテーブル定義書を作るリバースエンジニアリング機能
MySQL Workbenchの強力な機能の一つが、データベース情報からER図とテーブル定義書を作る「リバースエンジニアリング(Reverse Engineering)」機能です。
上部メニューのデータベース→リバースエンジニアリングを選択後、ウィザード形式の質問に答えていくと既存データベースのER図が出来上がります。
作成したER図は、上部メニューのファイル→エクスポート→PNG形式を選ぶと、画像として出力が可能です。
PNG形式以外に、SVG形式やPDF形式、印刷用のPostScript形式にも対応。なお、ER図に変更を加えた結果を、create table等のSQLとしてエクスポートすることも可能です。
上部メニューのデータベース→フォワードエンジニアを選択することで、ファイル出力を介さずに、ER図の変更を直接データベースへの反映することが可能です。
データベースからリバースエンジニアリングしてER図にしたり、ER図をフォワードエンジニアリングしてDLL(create tableなどのSQL)を生成する機能は、無料で使えるツールとしてはかなりレアと言えるでしょう。
まとめ
- MySQL Workbenchは、無料でダウンロードして使用可能。
- テーブル一覧から、SQLを生成する開発者向け機能あり。整形機能は弱い。
- ひと目でサーバステータスがわかる管理者向け機能が充実。コマンドを覚えずにMySQLの管理ができる。
- データベースからER図、ER図からデータベースを生成するリバースエンジニアリング・フォワードエンジニアリング機能あり。