author @fyunli
一、BI SERVER安裝
安裝JDK 1.6+
解壓biserver-ce-5.1.0.0-752
啟動(dòng)start-pentaho.bat
-
訪(fǎng)問(wèn)BI SERVER
啟動(dòng)界面出現(xiàn)Pentaho BI平臺(tái)服務(wù)器就緒后,瀏覽器打開(kāi)
Pentaho BI Server
二蹬竖、 遷移資料庫(kù)到ORACLE
Pentaho bi server默認(rèn)資料庫(kù)存放在HSQL數(shù)據(jù)庫(kù)中寓搬,對(duì)于小型應(yīng)用可使用默認(rèn)配置尊浓,對(duì)于企業(yè)應(yīng)用則建議遷移到MYSQL, ORACLE等數(shù)據(jù)庫(kù)撑螺。
PS: 以下文件目錄以biserver-ce作為起始目錄吏砂。
1蝇恶、創(chuàng)建數(shù)據(jù)庫(kù)
新建ORACLE數(shù)據(jù)庫(kù)拳魁,假設(shè)為pentaho
使用biserver-ce\data\oracle10g目錄內(nèi)的sql文件創(chuàng)建表空間、用戶(hù)名及數(shù)據(jù)表
sqlplus sys/password@pentaho as sysdba;
START create_jcr_ora;
conn sys/password as sysdba;
START create_quartz_ora;
conn sys/password as sysdba;
START create_repository_ora
2撮弧、將Oracle JDBC驅(qū)動(dòng)ojdbc6-11.2.0.3.jar Copy到tomcat/lib目錄
3潘懊、修改配置文件
3.1 配置Quartz
修改pentaho-solutions\system\quartz\quartz.properties
將原有內(nèi)容:
org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.PostgreSQLDelegate
替換成:
org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.oracle.OracleDelegate
3.2 配置Hibernate
3.2.1 修改pentaho-solutions\system\applicationContext-spring-security-hibernate.properties
將原有內(nèi)容:
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=oracle.jdbc.OracleDriver
jdbc.url=jdbc:oracle:thin:@127.0.0.1:1521:PENTAHO
jdbc.username=hibuser
jdbc.password=password
hibernate.dialect=org.hibernate.dialect.Oracle10gDialect
3.2.2 修改pentaho-solutions\system\hibernate\hibernate-settings.xml
將原有內(nèi)容:
<config-file>system/hibernate/mysql5.hibernate.cfg.xml</config-file>
替換成:
<config-file>system/hibernate/oracle10g.hibernate.cfg.xml</config-file>
3.2.3 修改pentaho-solutions\system\hibernate\oracle10g.hibernate.cfg.xml
修改JDBC連接參數(shù)如下:
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration
PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="cache.provider_class">net.sf.ehcache.hibernate.SingletonEhCacheProvider</property>
<property name="hibernate.generate_statistics">true</property>
<property name="hibernate.cache.use_query_cache">true</property>
<!-- Oracle 10g Configuration -->
<property name="connection.driver_class">oracle.jdbc.OracleDriver</property>
<property name="connection.url">jdbc:oracle:thin:@127.0.0.1:1521:PENTAHO</property>
<property name="dialect">org.hibernate.dialect.Oracle10gDialect</property>
<property name="connection.username">hibuser</property>
<property name="connection.password">password</property>
<property name="connection.pool_size">10</property>
<property name="show_sql">false</property>
<property name="hibernate.jdbc.use_streams_for_binary">true</property>
<!-- replaces DefinitionVersionManager -->
<property name="hibernate.hbm2ddl.auto">update</property>
<!-- load resource from classpath -->
<mapping resource="hibernate/oracle10g.hbm.xml" />
</session-factory>
</hibernate-configuration>
3.3 替換默認(rèn)Audit Log
用pentaho-solutions/system/dialects/oracle10g/audit_sql.xml 替換 pentaho-solutions/system/audit_sql.xml
3.4 配置JackRabbit
修改pentaho-solutions\system\jackrabbit\repository.xml
將
FileSystem、DataStore
Workspace\FileSystem想虎、Workspace\PersistenceManager
Versioning\FileSystem卦尊、Versioning\PersistenceManager
幾節(jié)的配置參數(shù)對(duì)應(yīng)修改為Oracle,并修改tablespace原值JACKRABBIT為pentaho_tablespace
3.5 修改JNDI
3.5.1 tomcat\webapps\pentaho\META-INF\context.xml
將原有內(nèi)容:
<?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="oracle.jdbc.OracleDriver" url="jdbc:oracle:thin:@127.0.0.1:1521:PENTAHO"
validationQuery="select 1 from dual" />
<Resource name="jdbc/Quartz" auth="Container" type="javax.sql.DataSource"
factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxActive="20" maxIdle="5"
maxWait="10000" username="quartz" password="password"
driverClassName="oracle.jdbc.OracleDriver" url="jdbc:oracle:thin:@127.0.0.1:1521:PENTAHO"
validationQuery="select 1 from dual"/>
</Context>
3.5.2 刪除tomcat\conf\Catalina\localhost\pentaho.xml
3.6 修改tomcat\webapps\pentaho\WEB-INF\web.xml舌厨,停止HSQL啟動(dòng)
注釋掉以下兩段:
<!-- [BEGIN HSQLDB DATABASES] -->
<context-param>
<param-name>hsqldb-databases</param-name>
<param-value>sampledata@../../data/hsqldb/sampledata,hibernate@../../data/hsqldb/hibernate,quartz@../../data/hsqldb/quartz</param-value>
</context-param>
<!-- [END HSQLDB DATABASES] -->
<!-- [BEGIN HSQLDB STARTER] -->
<listener>
<listener-class>org.pentaho.platform.web.http.context.HsqldbStartupListener</listener-class>
</listener>
<!-- [END HSQLDB STARTER] -->
3.7 其他
遷移到其他數(shù)據(jù)庫(kù)步驟類(lèi)似岂却,詳情可見(jiàn)
4、處理bi-server自帶實(shí)例庫(kù)
Pentaho BI Server自帶實(shí)例庫(kù)數(shù)據(jù)存放在HSQL中裙椭,資料庫(kù)轉(zhuǎn)移后啟動(dòng)Pentaho BI Server因找不到數(shù)據(jù)會(huì)報(bào)錯(cuò)躏哩,只需刪除實(shí)例庫(kù)即可:
- 刪除pentaho_solutions\system\default_content內(nèi)容
- 刪除pentaho_solutions\system\jackrabbit\repository目錄