仕事兼、趣味兼、ブロガーという、1つの案件で3つをこなす、ユゲタです。
今回はとある会社さんで、お仕事で参画した開発部門の資料がなんも整っていない&その内容把握をしないと行けないということで、
まずはデータベースの中身を見るために、ER図を作ろうと考えて、「SchemaSpy」を使おうとしたけど、
いろいろな記事に書かれているけど、どうもMacBookAir2020のシリコンチップでうまく動作できない。
ということで、Dockerでシリコンマックで動作できる便利composerを困っている人に使ってもらおうとGithubにアップしておきました。
そして、MysqlとPostgreSQLのどちらでも設定できるように、ドライバも同梱しておくことにしたので、どっちも便利に使えると思います。
Github
githubのリンクは以下です。
ご自由にcloneしてお使いください。
mynt_schemaspy
URL : https://github.com/yugeta/mynt_schemaspy
使い方
基本的な使い方として、cloneして落ちてきたフォルダ内のdockerフォルダに入ってもらって、その中にある、config/sample.propファイルを修正すれば、あとはdockerを立ち上げるだけという手順です。
簡単でしょ?
schemaspy.t=mysql
schemaspy.dp=/app/mysql.jar
schemaspy.host=localhost
schemaspy.port=3306
schemaspy.db=database
schemaspy.u=root
schemaspy.p=
schemaspy.o=/output
schemaspy.s=database
まず、mysqlかPostgreSQLのどちらかを指定します。
サンプルはmysqlになっているので、PostgreSQLの場合は、「pgsql」としてください。
host名、ポート名、DB名、ログインID、パスワード、スキーマは、それぞれの環境のものに書き換えてください。
スキーマの箇所は空欄にすると、うまくアクセスできなかったので、わからない場合は、DB名を書いておくといいでしょう。
とりあえず、mysql.propとpgsql.propを参考に入れているので、そちらを参考にしてもらって環境入力をしてください。
起動
ルート階層で、次のコマンドを実行するだけです。
$ sh run.sh
設定に問題がなければ、数分待てば、DBの内容が記載されたHTMLデータや画像ができあがります。
作られたデータは、ルート階層に、dataフォルダが作られるので、その直下にある、index.htmlをブラウザで開くと、
素敵に内容が確認できます。
ちなみに、ユゲタの触った、とある会社のデータベースは、ER図を見ても、リレーション設定がまともにできておらず、
残念な感じになっていました・・・orz
最後に
他の環境でも使えるように、レポートもらえると助かります。
そして、データベース設計など、ER図などから読み取れることも多いし、学習出来る点もたくさん見つけられるので、
こうした資料作成って重要であることを、改めて感じましたね。
0 件のコメント:
コメントを投稿