saiku數據庫的表和用戶默認創建是在啟動項目的時候,通過初始化 saiku-beans.xml 中的 h2database 這個bean執行org.saiku.service.Database類的init方法來初始化數據表和默認用戶的。
默認用戶遷移mysql步驟:
1.修改web.xml文件,修改名為db.url,db.user,db.password的值。
2.修改saiku-bean.xml,注釋h2database,添加mysqlDatabase,修改licenseBean中的databaseManager屬性為mysqlDatabase。
3.修改saiku-beans.properties文件,修改userdao.driverclass,userdao.url,userdao.username,userdao.password的值。
4.修改applicationContext-spring-security-jdbc.properties文件,修改jdbcauth.driver,jdbcauth.url,jdbcauth.username,jdbcauth.password的值。
5.修改文件Database.java文件:
修改init方法,注釋掉loadEarthquakes()(會導致啟動報錯)
修改initDB方法中的JdbcDataSource為MysqlDataSource
修改loadUsers方法、checkUpdatedEncyption方法、updateForEncyption方法中的sql語句(因為h2和mysql的語法有差別),可參考文章:http://www.cnblogs.com/avivaye/p/4881106.html
數據表遷移mysql步驟(已完成默認用戶遷移):
1.創建數據表和插入數據。
2.在項目中創建文件夾legacy-datasources和legacy-schema,並復制schema文件和datasources文件
3.修改文件Database.java文件:
修改init方法,注釋掉loadEarthquakes()和loadFoodmart()方法
修改loadLegacyDatasources()方法,直接引入schema文件和datasources文件
4.修改LegacyImporterImpl.java文件的importDatasources()方法:
啟動項目登陸查看測試數據:
參考:http://www.cnblogs.com/avivaye/p/4881106.html