SchemaSpy是一个Java开发的开源的数据库文档生成工具。对于复杂数据库结构,可以直观的显示其中给个实体的对应关系,对于理解数据库的结构有很大的帮助。

0 基本信息

官网: http://schemaspy.org
Github地址: https://github.com/schemaspy/schemaspy

用到的包我已经打包发到csdn的下载区。

我所使用的环境:

  • 操作系统:UBUNTU 16.04 64位
  • 数据库:postgreSQL

1 安装Java

SchemaSpy是给予Java开发的,所以要想运行必须先安装Java。
我使用的是ubuntu 16.04,安装java8的方法如下:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
sudo apt-get install oracle-java8-set-default

安装之后用java -version可以检测是否安装成功。


2 安装graphviz

graphviz是一个简便的绘制流程图的命令行工具,schemaspy通过这个工具绘制各个表之间的关系。

最终效果如下图所示:
graphviz绘制的结果

ubuntu下的话,直接使用

sudo apt-get install graphviz

安装之后,在~/.bashrc中加上环境变量,

PATH=$PATH:/usr/lib/dot

3 安装SchemaSpy

官方Github直接下载jar包就可以了。

我已经上传到CSDN下载区,
地址为:http://download.csdn.net/detail/liuyueyi1995/9768678


4 安装数据库驱动

根据所用的数据库和java版本的不同,进行下载。
https://jdbc.postgresql.org/download.html
我所使用的postgreSQL + java8,对应的下载PostgreSQL JDBC 4.2 Driver, 42.0.0就可以了。

我已经上传到CSDN下载区,
地址为:http://download.csdn.net/detail/liuyueyi1995/9768679


5 运行SchemaSpy

只需要执行下列命令

java -jar schemaspy.jar -t dbType -dp driver -db dbName -host hostname -port port -s schema -u user -p password -o outputDir
参数解释
-jar指明schemaspy.jar存储的路径
-t指明数据库类型,使用java -jar schemaspy -dbhelp可以看到支持那些数据库及其对应的参数该怎么写。
-dp指明jdbc驱动存储的路径
-db指明数据库名
-host指明数据库服务器的IP
-port指明数据库服务对应的端口
-s指明schema
-u指明用户名
-p指明登录口令
-o指明结果存储位置,其结果是以网页的形式展示

目录结构如下图所示:
输出的结果

从网页上打开可以看到分析的结果:
网页显示

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐