saiku 连接 MySQL_saiku迁移至mysql步骤

本文详细介绍了将Saiku数据库从H2迁移到MySQL的过程,包括修改配置文件、调整代码及数据表迁移的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

saiku数据库的表和用户默认创建是在启动项目的时候,通过初始化 saiku-beans.xml 中的 h2database 这个bean执行org.saiku.service.Database类的init方法来初始化数据表和默认用户的。

默认用户迁移mysql步骤:

1.修改web.xml文件,修改名为db.url,db.user,db.password的值。

a2a2a057787a30731caa4c5d0c4f1f83.png

2.修改saiku-bean.xml,注释h2database,添加mysqlDatabase,修改licenseBean中的databaseManager属性为mysqlDatabase。

51c1181dc884fcb5d111f15c08ac4e26.png

b295cc3a7215a317bf2140974fbae15a.png

3.修改saiku-beans.properties文件,修改userdao.driverclass,userdao.url,userdao.username,userdao.password的值。

9816ed39492f3236976d374ff5225736.png

4.修改applicationContext-spring-security-jdbc.properties文件,修改jdbcauth.driver,jdbcauth.url,jdbcauth.username,jdbcauth.password的值。

942d078ebc18ac1fcd9869edf200bcd2.png

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文件

933eb83195d0b7d8e6ea7f1033bedbe7.png

3.修改文件Database.java文件:

修改init方法,注释掉loadEarthquakes()和loadFoodmart()方法

修改loadLegacyDatasources()方法,直接引入schema文件和datasources文件

b99a4c4a85cabba7756883e725aa000a.png

4.修改LegacyImporterImpl.java文件的importDatasources()方法:

3fcff3aa625f6688dad9687d9ccbee4f.png

启动项目登陆查看测试数据:

84bfca66e4541f22f5ba7f2dea8621ad.png

参考:http://www.cnblogs.com/avivaye/p/4881106.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值