Pentaho Business Intelligence Suite配置:在Windows环境下使用MySQL 5.x

十二 172010

 

Pentaho开发者社区资源:

PAT (Pentaho Analysis Tool) 

CDF (Community Dashboard Framework) 利用Pentaho’s Business Intelligence Server 的用户控制台创建数据面板的框架

CBF (Community Build Framework)

CDA (Community Data Access)

A data access layer for CDF (Community Dashboard Framework).

第一部分:准备工作

1. 安装和配置Java

从Sun Developer Network下载最新的Java JDK,安装。

在Windows中配置Java运行环境:

点击 “我的电脑” – “属性” – “高级”,添加新的环境变量,如下图(此处要修改为系统变量,不能用用户变量,在win764位环境下,反复测试存在问题

image

image

还可以增加CATALINA_OPTS环境变量,让Apache-Tomcat服务器能使用比默认值更多的内存,变量值为:

-Xms256m -Xmx768m -XX:MaxPermSize=256m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000

见下图:

image

安装和配置MySQL 5.x Server

基本上使用默认值即可。

部署Pentaho平台

Pentaho Sourceforge Projects 网页 下载biserver-ce-3.7.x.stable.zip文件,解压后的文件目录如下

C:
|– pentaho
|    |– adminstration-console
|    |– biserver-ce

在biserver-ce目录双击运行start-pentaho.bat,Pentaho bi server服务即会自动运行,然后可以用 http://localhost:8080 访问

如果电脑上已经配置了Tomcat,那把下面加粗文字的文件夹移到Apache-Tomcat安装目录下

C:
|– pentaho
|    |– adminstration-console
|    |– biserver-ce
|        |– pentaho-solutions
|        |– tomcat
|            |– common
|                `– lib
|                    `– mysql-connector-java-5.0.7.jar (optional)
|            |– webapps
|                 `– pentaho
|                 `– pentaho-styles
|                 `– sw-styles

MySQL Java Connector MySQL Java 连接器

如果Apache-Tomcat没有MySQL Java连接器,那需要把mysql-connector-java-5.0.7.jar拷贝到tomcat的commonlib目录。

SQL Script Pack – SQL脚本包

这里下载MySQL 5.x SQL脚本包,来配置必须的数据库。

第二部分

配置数据库

解压MySQL 5.x SQL脚本包,解压出5个sql文件:

1_create_repository_mysql.sql

创建Hibernate数据库

2_create_quartz_mysql.sql

创建Quartz 数据库

3_create_sample_datasource_mysql.sql

把Pentaho自带的样例数据加入Hibernate数据库

4_load_sample_users_mysql.sql

把样例数据库用户和角色加入到Hibernate数据库

5_sample_data_mysql.sql

    创建样例数据库

在“开始”菜单里打开安装好的"MySQL" – "MySQL Server 5.1" – "MySQL Command Line Client ",在命令行界面(类似dos界面)中输入管理员密码后,依此执行下面的命令(须按顺序):

mysql> source 1_create_repository_mysql.sql;
…output
mysql> source 2_create_quartz_mysql.sql;
…output
mysql> source 3_create_sample_datasource_mysql.sql;
…output
mysql> source 4_load_sample_users_mysql.sql;
…output
mysql> source 5_sample_data_mysql.sql;
…output

成功执行后,使用命令"mysql> show databases;"查看新创建的数据库。数据库的结构如下:

  • hibernate*
    • authorities
    • datasource
    • granted_authorities
    • users
  • quartz
    • qrtz_blob_triggers
    • qrtz_calendars
    • qrtz_cron_triggers
    • qrtz_fired_triggers
    • qrtz_job_details
    • qrtz_job_listeners
    • qrtz_locks
    • qrtz_paused_trigger_grps
    • qrtz_scheduler_state
    • qrtz_simple_triggers
    • qrtz_trigger_listeners
    • qrtz_triggers
  • sampledata
    • customer_w_ter
    • customers
    • department_managers
    • dim_time
    • employees
    • offices
    • orderdetails
    • orderfact
    • orders
    • payments
    • products
    • quadrant_actuals
    • trial_balance

提醒:如果在运行5_sample_data_mysql.sql脚本时报错,那请用文本编辑器把里面的时间戳值“00.000000000”替换为"00.000000"。

配置JDBC Security安全连接

下面将Pentaho BI平台指向MySQL数据库服务器,不再使用自带的HSQL数据库。下面,你将需要修改几个配置文件:

applicationContext-spring-security-jdbc.xml

文件位置:pentaho-solutionssystem

<!– This is only for Hypersonic. Please update this section for any other database you are using –>
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="org.hsqldb.jdbcDriver" />
<property name="url"
value="jdbc:hsqldb:hsql://localhost:9001/hibernate" />
<property
name="username" value="hibuser" />
<property name="password" value="password" />
</bean>

将高亮部分替换为:

<!–  This is only for Hypersonic. Please update this section for any other database you are using –>
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/hibernate" />
<property name="username" value="hibuser" />
<property name="password" value="password" />
</bean>

applicationContext-spring-security-hibernate.properties

文件位置:pentaho-solutionssystem

原文件:

jdbc.driver=org.hsqldb.jdbcDriver

jdbc.url=jdbc:hsqldb:hsql://localhost:9001/hibernate

jdbc.username=hibuser

jdbc.password=password

hibernate.dialect=org.hibernate.dialect.HSQLDialect

修改为:

jdbc.driver=com.mysql.jdbc.Driver

jdbc.url=jdbc:mysql://localhost:3306/hibernate

jdbc.username=hibuser

jdbc.password=password

hibernate.dialect=org.hibernate.dialect.MySQLDialect

hibernate-settings.xml

文件位置:pentaho-solutionssystemhibernate

原文件:

<config-file>system/hibernate/hsql.hibernate.cfg.xml</config-file>

修改为:

<config-file>system/hibernate/mysql5.hibernate.cfg.xml</config-file>

配置 Hibernate 和 Quartz

Hibernate和Quartz需使用创建在MySQL服务器上的相应数据库。因此,需要修改 “tomcatwebappspentahoMETA-INF” 目录里的 context.xml 文件。

原文件:

<?xml version="1.0" encoding="UTF-8"?>

<Context path="/pentaho" docbase="webapps/pentaho/">

<Resource name="jdbc/Hibernate" auth="Container" type="javax.sql.DataSource"

factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxActive="20" maxIdle="5"

maxWait="10000" username="hibuser" password="password"

driverClassName="org.hsqldb.jdbcDriver" url="jdbc:hsqldb:hsql://localhost/hibernate"

validationQuery="select count(*) from INFORMATION_SCHEMA.SYSTEM_SEQUENCES" />

<Resource name="jdbc/Quartz" auth="Container" type="javax.sql.DataSource"

factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxActive="20" maxIdle="5"

maxWait="10000" username="pentaho_user" password="password"

driverClassName="org.hsqldb.jdbcDriver" url="jdbc:hsqldb:hsql://localhost/quartz"

validationQuery="select count(*) from INFORMATION_SCHEMA.SYSTEM_SEQUENCES"/>

</Context>

修改为:

<?xml version="1.0" encoding="UTF-8"?>

<Context path="/pentaho" docbase="webapps/pentaho/">

<Resource name="jdbc/Hibernate" auth="Container" type="javax.sql.DataSource"

factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxActive="20" maxIdle="5"

maxWait="10000" username="hibuser" password="password"

driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/hibernate"

validationQuery="select 1" />

<Resource name="jdbc/Quartz" auth="Container" type="javax.sql.DataSource"

factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxActive="20" maxIdle="5"

maxWait="10000" username="pentaho_user" password="password"

driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/quartz"

validationQuery="select 1"/>

</Context>

修改 tomcatwebappspentahoWEB_INF 目录里的 web.xml 文件,可以对Pentaho BI 平台进行以下配置:

  • pentaho-solutions 的位置
  • URL
  • 安全地址(可选,针对远程访问管理员控制台)
pentaho-solution 的路径

根据你的安装情况,进行相关参数配置:

<context-param>
    <param-name>solution-path</param-name>
    <param-value>C:pentahopentaho-solutions</param-value>
</context-param>

fully-qualified-server-url

找到下面这段代码:

<param-value>http://localhost:8080/pentaho/</param-value>

修改样例(根据你的电脑或服务器的域名或IP地址修改):

<param-value>http://www.prashantraju.com:8080/pentaho/</param-value>
or
<param-value>http://192.168.1.10:8080/pentaho/</param-value>

配置SMTP参数

样例:

<email-smtp>
    <properties>
        <mail.smtp.host>smtp.gmail.com</mail.smtp.host>
        <mail.smtp.port>587</mail.smtp.port>
        <mail.transport.protocol>smtps</mail.transport.protocol>
        <mail.smtp.starttls.enable>true</mail.smtp.starttls.enable>
        <mail.smtp.auth>true</mail.smtp.auth>                                  <mail.smtp.ssl>true</mail.smtp.ssl>
        <mail.smtp.quitwait>false</mail.smtp.quitwait>
   </properties>
    <mail.pop3></mail.pop3>
    <mail.from.default>pentahoadmin@gmail.com</mail.from.default>
    <mail.userid>pentahoadmin@gmail.com</mail.userid>
    <mail.password>password</mail.password>
</email-smtp>

配置发布密码Publishing

默认设置下,发布功能是禁止的,要打开它,需设置一个密码。在 "pentaho-solutionssystem" 目录找到 publisher_config.xml 文件

找到下面代码:

<publisher-config>
<publisher-password></publisher-password>
</publisher-config>

修改样例(以后,要把内容发布到Pentaho BI平台,就需要下面设置的密码了):

<publisher-config>
<publisher-password>publishthis</publisher
-password>
</publisher-config>

启动Business Intelligence平台

Pentaho BI平台是基于Apache-Tomcat服务器上的webapp。要启动Apache-Tomcat,需把Apache-Tomcat设置为一项服务。下面是启动命令行:

C:pentahobiserver-cetomcatbin> service.bat install tomcat5

运行上面的命令后,将开始安装服务 ‘tomcat5′ …

Using CATALINA_HOME:    D:pentahobiserver-cetomcat

Using CATALINA_BASE:    D:pentahobiserver-cetomcat

Using JAVA_HOME:        C:Program FilesJavajdk1.6.0_13

Using JVM:              C:Program FilesJavajdk1.6.0_13jrebinserverjvm.dll

服务’tomcat5′ 安装完毕

你可以在Windows服务管理里面找到Apache-Tomcat,然后进行 启动-停止 管理。见下图:

image

成功启动成功后,你现在可以打开浏览器,输入网址:http://localhost:8080/pentaho http://[your_domain_or_ip]:8080/pentaho 。如果Pentaho BI平台成功启动,那你就能看到下面的欢迎界面了:

image

在 "c:pentahoadminstration-console" 目录找到 start-pac.bat ,双击并成功启动管理控制台,在浏览器里输入地址 http://localhost:8099/,你就能访问管理控制台了!

image

Well done !

原文地址:https://www.cnblogs.com/mybi/p/2548402.html