首页 > 数据库技术 > 详细

saiku - 将saiku自带的H2嵌入式数据库迁移到本地mysql数据库

时间:2015-10-15 01:04:31      阅读:412      评论:0      收藏:0      [点我收藏+]

 

 

saiku数据库的表和用户默认创建是在启动项目的时候,通过初始化 saiku-beans.xml 中的 h2database 这个 bean 

执行org.saiku.service.Database类的init方法来初始化数据表和默认用户的。

 

具体修改如下:

1/修改web.xml 中 数据连接配置信息

将以下代码

 

替换为:

 

2/修改saiku-beans.xml中h2database配置信息

将以下代码

 

替换为:

 

3/修改Database中获取的数据源为mysql

将以下代码

替换为:

4/因为h2建表sql和mysql的还是有差异的,所以将创建表和用户信息的代码替换如下:

mysql数据表和用户的创建代码为:

 

 

以上的信息修改完毕后,在本地mysql创建url中指定的database->saikuBase,此时db中无任何表

运行saiku项目成功后,刷新db,可以看见db中多出了三张表user/user_roles/log,说明初始化表和默认数据已经成功。

但是,此时只是创建了表结构和默认的登陆账户,并没有修改登录的用户认证数据源。

当我们使用admin登陆时还是会访问到jdbc中配置的h2数据库数据源。

其实这时候还是通过访问h2内嵌数据库的db文件登陆的,在管理端新建的用户也会保存在h2数据源中,mysql数据源中查询不到新建的用户

所以,接下来要修改认证数据源为本地的mysql

 

5/修改用户认证数据源

将 bean id 为 datasource 的 数据源的配置信息改为我们本地mysql的配置信息,重新部署服务并启动

这时,我们在管理端创建一个用户saiku,点击保存。

查看本地mysql数据库的user表,能看见saiku已经存在user表中了,并且使用saiku用户登录也能登录成功。

将*security-jdbc.xml 中的

 

替换为:

 

至此就完成了h2数据库迁移到本地mysql的操作了

 

saiku - 将saiku自带的H2嵌入式数据库迁移到本地mysql数据库

原文:http://www.cnblogs.com/avivaye/p/4881106.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!