Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Sakai database property settings are stored in sakai.properties and placeholder.properties. Both files are located by default in tomcat/sakai.

Every sakai.properties MUST HAVE these settings:

  1. sakai.properties - the demo edition
    1. Placeholder properties : the complete set must be defined here
  1. set the hibernate dialect (for shared datasource)
    hibernate.dialect=net.sf.hibernate.dialect.HSQLDialect

#set the auto DDL feature
auto.ddl=true

This is due to a "bug" in Spring's placeholder system that we will address later.

Then you need some more stuff:

  1. set the hibernate dialect (for shared datasource), HSQLDB by default, mySql and Oracle examples
  2. NOTE: this is required, and must be in any sakai.properties file
    hibernate.dialect=net.sf.hibernate.dialect.HSQLDialect
    #hibernate.dialect=net.sf.hibernate.dialect.MySQLDialect
    #hibernate.dialect=net.sf.hibernate.dialect.Oracle9Dialect
  1. set the shared datasource driver, HSQLDB by default, mySql and Oracle examples
    driverClassName@javax.sql.DataSource=org.hsqldb.jdbcDriver
    #driverClassName@javax.sql.DataSource=com.mysql.jdbc.Driver
    #driverClassName@javax.sql.DataSource=oracle.jdbc.driver.OracleDriver
  1. set the shared datasource URL, HSQLDB in-memory by default, mySql and Oracle examples
    url@javax.sql.DataSource=jdbc:hsqldb:.
    #url@javax.sql.DataSource=jdbc:mysql://127.0.0.1:3306/sakai?useUnicode=true&characterEncoding=UTF-8
    #url@javax.sql.DataSource=jdbc:oracle:thin:@monster.oracle.org:1521:db
  1. set the vendor for legacy sql access
    vendor@org.sakaiproject.service.framework.sql.SqlService=hsqldb
    #vendor@org.sakaiproject.service.framework.sql.SqlService=mysql
    #vendor@org.sakaiproject.service.framework.sql.SqlService=oracle

And:

username@javax.sql.DataSource=
password@javax.sql.DataSource=

So... for MySQL, a sakai.properties would look like this:

auto.ddl=true
hibernate.dialect=net.sf.hibernate.dialect.MySQLDialect
vendor@org.sakaiproject.service.framework.sql.SqlService=mysql
driverClassName@javax.sql.DataSource=com.mysql.jdbc.Driver
url@javax.sql.DataSource=jdbc:mysql://127.0.0.1:3306/sakai?useUnicode=true&characterEncoding=UTF-8
username@javax.sql.DataSource=whatever
password@javax.sql.DataSource=whichever

just set the url, username and password.

And... for Oracle, use this:


auto.ddl=true
hibernate.dialect=net.sf.hibernate.dialect.Oracle9Dialect
vendor@org.sakaiproject.service.framework.sql.SqlService=oracle
driverClassName@javax.sql.DataSource=oracle.jdbc.driver.OracleDriver
url@javax.sql.DataSource=jdbc:oracle:thin:@monster.oracle.org:1521:db
username@javax.sql.DataSource=scott
password@javax.sql.DataSource=tiger

Unknown macro: {/noformat}

again, setting the url, username and password.

If this is your sakai.properties, and it's properly found at runtime in the sakai.home, then you will have connected to the database of choice.  Everything in Sakai is using this setting.

  • No labels