Added by Andrew Savory, last edited by Bart van der Schans on Feb 14, 2008  (view change)

Labels:

configuration configuration Delete
quartz quartz Delete
database database Delete
cms cms Delete
projectdata projectdata Delete
Enter labels to add to this page:
Wait Image 
Looking for a label? Just start typing.

This page explains the setup of the various databases within HippoCMS.

Instance data & project data

The CMS discerns between scheduler data it needs for the cocoon instance and data is needs for the project (website). The cocoon instance data contains info about things like the scheduled removal of local temporary files. The data for the scheduler for the project contains entries for things like unpublication dates of documents.

Quartz databases

The CMS uses three quartz databases. One for project data and two for instance data. The project data is shared between cocoon instances and is configured to be clustered. Usually all the project data is in one database, which means that the osworkflow and quartz tables are in the same database. The two instance databases are the cocoonscheduler in cocoon.xconf and the serverscheduler in schedulerStore.xml.

Hippo CMS 6.05.00 and newer versions
Since Hippo CMS 6.05.xx and up only the projectdata database is used. The cocoonscheduler and serverscheduler are no longer used.

Clustering

It's important to remember that the project data MUST be (configured to) shared between cocoon instances (i.e. they all use the same database) and the instance data CANNOT be shared between cocoon instances (i.e. each cocoon instance uses it's own databases).

Build properties

In the build.properties/project.properties you've to configure four datasources. Two for project data: cms.datasource.workflow and cms.datasource.scheduler, and two for the instance date: cms.datasource.quartz (cocoon.xconf) and cms.datasource.serverscheduler (schedulerStore.xml). Below is an example configuration for MySQL. Hsqldb should work "out of the box" (default).

Example properties:

maven.cocoon.hsqldb.use=false

# Per website workflow and scheduler
cms.datasource.workflow.driver=com.mysql.jdbc.Driver
cms.datasource.workflow.url=jdbc:mysql://172.10.100.1/projectdata
cms.datasource.workflow.user=user
cms.datasource.workflow.password=pass

cms.datasource.scheduler.name=quartz
cms.datasource.scheduler.driver=com.mysql.jdbc.Driver
cms.datasource.scheduler.url=jdbc:mysql://172.10.100.1/projectdata
cms.datasource.scheduler.user=user
cms.datasource.scheduler.password=pass

# Per cocoon instance scheduler, must be different from site schedular (cocoon.xconf)
cms.datasource.quartz.driver=com.mysql.jdbc.Driver
cms.datasource.quartz.name=quartz
cms.datasource.quartz.url=jdbc:mysql://172.10.100.1/cocoonschedular
cms.datasource.quartz.user=user
cms.datasource.quartz.password=pass

# Per cocoon instance scheduler, must be different from site scheduler (schedulerStore.xml)
cms.datasource.serverscheduler.driver=com.mysql.jdbc.Driver
cms.datasource.serverscheduler.name=quartz
cms.datasource.serverscheduler.url=jdbc:mysql://172.10.100.1/serverschedular
cms.datasource.serverscheduler.user=user
cms.datasource.serverscheduler.password=pass