Railsでは、データベースの設定をMigrationファイルに書いていって、即反映させながら開発を重ねていく。そのため、幾人かで開発を行っていると、徐々にデータベース構造が複雑化し、最適化されていない構造になってしまう。これはRailsに限らず、システム開発では常に生じるものだろう。

entrance02.png

メイン画面

 

初期の頃からすべてを想定して作り上げていくことは難しいが、あるタイミングで正規化していく必要が生じるだろう。その時に役立つのがこのソフトウェアだ。

今回紹介するオープンソース・ソフトウェアはMySQL Workbench、MySQLのデータベースデザイナーだ。

MySQL Workbenchはあるデータベースに関してテーブル、ビュー、ルーチン、SQLスクリプト等をビジュアル的に設計できる。ダイアグラムも作成でき、既に作成されているテーブルやビュー等をドラッグアンドドロップで配置し、そこに線を引いたり関連性を持たせることができる。

entrance03.png

SQLエクスポート

 

スキーマは一つに限らず、複数のものを同時に作成することもできる。一つのプロジェクト内で複数のスキーマを利用する場合に便利だ。SQLファイルからのインポート機能とエクスポート機能、そして既存のスキーマ作成SQLを指定してのAlterスクリプト生成機能がある。

データベースと接続するメニューもあるのだが、筆者環境では選択できない状態だった。同期する機能があればきっと便利になるに違いない。同種のソフトウェアとして有名な、DBDesigner4からインポートする機能もある。

entrance04.png

ダイアグラム作成

 

システムの開発開始時点だけ構造設計をしっかりと行い、その後の仕様変化や運用の変化に合わせた構造の変更はあまり検討されずに適用されることが多い。MySQL Workbenchを活用し、適切な設計を素早くできるようにしよう。

entrance01.png

スプラッシュウィンドウ

 

MySQL :: MySQL Workbench Downloads

 http://dev.mysql.com/downloads/workbench/