Migrating GraphDB configurations from v6 to v7

Procedure

There are two options for upgrade:

  • generate .war files from GraphDB 7 distribution

    • execute the following script: <graphdb_dist>/bin/generate-war-files. Two .war files will be produced: graphdb-server.war and graphdb-workbench.war.

    • prepare two instances of Tomcat server - one for the master and one for the worker nodes. You can copy existing Tomcat deployments but make sure you have deleted the existing web applications of GraphDB 6, e.g.:

      rm -rf <Tomcat>/webapps/openrdf-*
      
    • append to your tomcat’s startup script in the JAVA_OPTS section -Dgraphdb.home.data=<path_to_your_repositories>. This is a new configuration option introduced with GraphDB 7. The configuration option in GraphDB 6 is info.aduna.platform.appdata.basedir and it has been deprecated in v7.

    • GraphDB 7 logs can be found at <Tomcat>/logs/graphdb>.

  • use the standalone distribution of GraphDB 7 (recommended)

    • extract the distribution of GraphDB 7 to a selected location;
    • edit conf/graphdb.properties and set appropriate configuration options, e.g. location of your repositories or port number for accessing the SPARQL endpoint (default is 7200);
    • you can set your GraphDB 7 license by copying it to: directory conf/ and renaming it to: graphdb.license;
    • move relevant configuration options related to GraphDB from Tomcat (e.g. JAVA_OPTS section in setenv.sh) to bin/graphdb.in.sh (.cmd for Windows).
    • start GraphDB 7 by running the script bin/graphdb (you can run it with the option: --help to see all available run-modes).

Converting a repository created with GraphDB v6 to v7

At this point you have a working GraphDB 7 installation. This can be done by following these steps:

  • Start v7 worker and create corresponding repositories as in v6;
  • Stop v7 worker, and manually replace each of the v7 repositories’ storage/ directories with the corresponding v6 storage/ . Make sure that you have deleted the v7 storage/ before copying v6 over it.
  • Start the v7 worker. The repositories will be automatically converted to v7 on their first initialization, i.e. on the first query. The conversion to v7 may take some time depending on the size of data in the repository.

If configuring a cluster, you need to convert your v6 repositories to v7 on all workers.