Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

By default, Fedora comes configured to write binary resources (i.e. files) to the file system and RDF resources (i.e. objects) to a LevelDB database. It is often desirable to replace the LevelDB database with a different object store. As of 2016-0203-1104, the configuration for a MySQL database is MySQL or PostgreSQL databases are available within the deployable Fedora war file. Below  Below are the steps for enabling the to use of MySQL or PostgreSQL instead of the default LevelDB.

MySQL

  1. Install an instance of MySQL and create a database user account
  2. Run Fedora with the following JAVA_OPTS:

    Code Block
    JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.modeshape.configuration=classpath:/config/jdbc-mysql/repository.json"
    JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.ispn.mysql.username=<username>"
    JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.ispn.mysql.password=<password>"
    JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.ispn.mysql.host=<default=localhost>"
    JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.ispn.mysql.port=<default=3306>"

Note, the database and table used by ISPN are auto-created.

PostgreSQL

  1. Install PostgreSQL and create a database called ispn and a user account that can access it
  2. Run Fedora with the following JAVA_OPTS:
Code Block
JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.modeshape.configuration=classpath:/config/jdbc-postgresql/repository.json"
JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.ispn.postgresql.username=<username>"
JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.ispn.postgresql.password=<password>"
JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.ispn.postgresql.host=<default=localhost>"
JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.ispn.postgresql.port=<default=5432>"

Note, the ispn database must be manually created, but the tables will be automatically created.