This is a schemacrawler plugin that dumps database structure (also called schema) into a neo4j database. Once this done, you can view it in neo4j web console, perform CYPHER queries on it and hence allows you to report your database schema the way you want.
<img src="http://dev.assets.neo4j.com.s3.amazonaws.com/wp-content/uploads/2014/08/VLBCcWS-u6EcWuGxslN9UxCJWIiMNFR5Kv0vFnVqz3KVyvih5n3LF3RgEWpT99V6oTzlpnlvzroac8viV2gm4mOWgvw5IP8HiyZfCbx498ZgEQBX9XgqFumV.png?_ga=1.151612667.310337467.1434158905" alt="Screenshot" border="10" />
You can see these features as an addon to native schemacrawler features.
Because i find it fun to design a graph database schema to modelize a database schema ;-p
For now this plugin is its very early stages as i use this project to :
As this is a standard maven projet, just :
mvn clean package
jar
in the target
directoryBelow command to build it yourself :
git clone https://github.com/adriens/schemacrawler-plugin-neo4j.git
cd schemacrawler-plugin-neo4j
mvn package
ls -la target/schemacrawler-plugin-neo4j-${version}.jar
To create your neo4j database for your database schema, you need :
$SCHEMACARWLER_HOME/lib
Follow neo4j install instructions. In the following sections, i will assume you are runnning neo4j on linux as it's easier to document, but things are exactly the same.
Choose an *empty and dedicated directory that will contain the generated database : BEWARE AS DURING DATABASE CREATION THIS DIRECTORY WILL BE DELETED BY THE PLUGIN !**
Let's assume your neo4j graph database directory is ~/neo4j.
schemacrawler -host=localhost -port=5432 -database=sportsdb -user=sports_adm -password=user_adm -schemas=public -c=neo4j -infolevel=maximum -server=postgresql -loglevel=CONFIG -outputDir=./neo4j -sequences=.*
cd ~/apps/neo4j-community-3.2.6 && ./bin/neo4j start
Go to neo4j webapp (http://localhost:7474) and take a look at your graph database schema
cd ~/apps/neo4j-community-3.2.6 && ./bin/neo4j start
cd ~/apps/neo4j-community-3.2.6 && ./bin/neo4j stop && rm -rf ~/neo4j
cd ~/tmp sudo cp ~/NetBeansProjects/schemacrawler-plugin-neo4j/target/schemacrawler-plugin-neo4j-1.0-SNAPSHOT.jar /opt/schemacrawler/lib/ && schemacrawler -host=localhost -port=5432 -database=sportsdb -user=sports_adm -password=user_adm -schemas=public -c=neo4j -infolevel=maximum -server=postgresql -loglevel=CONFIG -outputDir=./neo4j
I'm not asking for money nor any kind of gift, but sometimes, to keep motivation safe while developing free software, it's nice to get some recognization.
So, if you like this software, please :
I want to thank my dear girlfriend for her patience when i develop software on the couch while she's watching and for supporting and listening to my enthousiatics thoughts about development, free software, ... and so many other tech things...
I also want to thank Sualeh Fatehi for his very kind help and support on Schemacrawler, and for always answering questions very fast... and of course for his great software with which i can make so many cool things !