• DBのテーブル構成を知りたい
  • ER図の生成にeralchemyを利用
  • PDFやマークダウンで出力できる

最近ご一緒しているお仕事でPostgreSQLのテーブルを見る機会があったのですが、

全体感を掴むためにひとまずER図を描きたいと思いました。

調べたところ eralchemyというツールを見つけたので試してみます。

インストール

AWSで管理しているのでRDSに繋げることができる

amazonlinuxで動いているEC2にインスタンスしました。

  • 事前にpdf生成にgraphvizパッケージをインストールしておく
ec2-user: $ sudo yum install graphviz graphviz-devel graphviz-gd graphviz-python27 graphviz-graphs
  • 今回はPostgreSQL上のテーブルを参照したいのでPostgreSQL用のドライバを利用します。

psqlコマンドでDB接続する際に設定した環境変数

ec2-user: $ cat ~/.bash_profile
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
	. ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/.local/bin:$HOME/bin

export PATH

export PGHOST=xxxx.rds.amazonaws.com
export PGPORT=5432
export PGDATABASE=xxxx
export PGUSER=xxxx
export PGPASSWORD=xxxx

PDFを生成するコマンド

ec2-user: $ cat generate_erd.sh
eralchemy -i "postgresql+psycopg2://${PGUSER}:${PGPASSWORD}@${PGHOST}:${PGPORT}/${PGDATABASE}" -o erd.pdf

web u project

Freelance Web Enginner.
Python / R / Ruby / Java / Swift


Amazon LinuxにeralchemyをインストールしてER図を作成 | Web U Project