pentaho——如何将Pentaho BI服务器的资料库迁移到MySQL数据库

       Pentaho BI服务器上的资料库默认是放在Hsql内存数据库中,所以每次使用启动pentaho平台服务时,都需要顺带启动相应的HSQLDB内存数据库。这样带来的后果就是你不能直接启动Pentaho自带的web服务器——tomcat,必须提前启动Hsql内存数据库,先将相应的资源生成与内存中,方便Pentaho服务器之后的调用,比如身份角色、实例数据等等。否则Pentaho BI 服务器将启动失败。所以作为Pentaho的使用者,确实有必要实现将相应资源库迁移至MySQL数据库中,这样就可以大大方便日后自己对pentaho平台的测试和使用!接下来,我们就详细地探讨下实现步骤。

     这里我们考虑的是将HSQLDB数据库切换到MySQL5.x数据库为例来阐述Pentaho BI资源库的迁移工作。因为Pentaho BI服务器已经内置了MySQL JDBC驱动程序,故而无需我们额外下载相应驱动,除非想更新其内置的驱动程序。

     首先大家需要运行相应的MySQL脚本来生成相应的资源库。所有的MySQL脚本到位于如下目录中:…\biserver-ce-3.5.0.stable\biserver-ce\data\mysql5。其中主要有一下几个文件:

1

   按如下顺序运行以上sql 脚本:create_repository_mysql.sql

create_quartz_mysql.sql— create_sample_datasource_mysql.sql—load_sample_users_mysql.sql—sample_data_mysql.sql,最后一个sql文件貌似没有,需要大家额外到pentaho官网下载,比较费事。接下我给大家一个集成版的sql脚本文件,只需运行它便可以完成以上所以脚本文件的工作。

(注:这个文本文件之后我会在末尾给出下载地址,阅读时只需要折叠起来即可)

  安装好相应的资源库之后,我们接下来就只需要改动Pentaho项目中的相应配置文件了,接下来将以图片的形式来说明,这样方便大家的阅读。

      首先我们需要改动如下文件:(…\\biserver-ce\pentaho-solutions\system\applicationContext-spring-security-jdbc.xml)的以下配置:

image

改成相应的MySQL配置,主要有driverClassName、url,再加上本地MySQL的username和password即可。在本人的机子上的配置如下:

image

      紧接着我们需要改动的文件是:…\biserver-ce\pentaho-solutions\system\hibernate\hibernate-settings.xml的以下配置:

image 

改成如下配置即可:

image

      接下来我们需要改动的文件便是:…\biserver-ce\pentaho-solutions\system\applicationContext-spring-security-hibernate.properties的以下配置:

image

改成如下配置即可:

image

       然后我们需要改动的文件便是pentaho web项目文件的context.xml文件:…\pentaho\META-INF\context.xml的以下配置文件:

image

改成如下配置即可:

image

      最后我们需要改动的地方便是打开Pentaho BI 管理员控制台(Admininster Controle),它的位置在…\biserver-ce-3.5.0.stable\administration-console文件夹下。首先我们启动管理员控制台,即运行start-pac.bat文件,然后在浏览器中输入:http://localhost:8099/进入控制台界面,并点击菜单栏中Database Connections子项即可修改Pentaho BI平台的数据库:

image

点击SampleData,即可在右边的修改相应的数据库相关配置信息(改成MySQL的配置信息),并点击Advanced修改Validation Query选项为如下形式:

image

然后点击Test按钮,如果连接成功会弹出如下提示框:

image

然后点击Update按钮,更新数据库,成功后弹出如下提示框:

image

完成以上步骤后即可停止Pentaho BI管理控制台服务,点击stop-pac.bat即可。

      经过以上的修改,我们接下来就可以直接启动Pentaho BI服务器内置的Tomcat服务器,而不需要额外启动HSQLDB内存数据库了,因为我们已经将Pentaho平台所需要的资源库持久化到MySQL数据库中了。往任意浏览器的地址栏中输入:http://localhost:8080/pentaho/享受无需开启内存数据库的乐趣吧! 

(注:以下为上文中提到的Pentaho BI平台所要用到的资源库生成脚本文件链接,大家可以直接下载后,复制到mysql客户端的查询窗口运行即可。)

      pentaho_mysql_datasource.rar

原文地址:https://www.cnblogs.com/JackyTecblog/p/2199120.html