建企業(yè)網(wǎng)站哪家好百度云搜索引擎入口
在Linux中安裝Pentaho Server 9.1并使用MySQL作為存儲庫
一、本文環(huán)境
應用名稱 | CentOS Linux | Pentaho Server CE | MySQL | JDK |
---|---|---|---|---|
應用版本 | 7.9 | 9.1 | 5.7 | 1.8 |
二、準備工作
1、下載pentaho-server-ce-9.1.0.0-324
安裝包
1.1、開源倉庫渠道
下載鏈接:https://sourceforge.net/projects/pentaho/files/Pentaho%209.1/server/
1.2、百度網(wǎng)盤渠道
下載鏈接:https://pan.baidu.com/s/1UB91ACgdG3bUBSP5keRa3w
提 取 碼: y2ql
2、安裝JDK(省略)
3、安裝MySQL(省略)
三、安裝Pentaho Server
1、在/opt
目錄下創(chuàng)建software
和module
兩個目錄
# 用于存放軟件安裝包
[root@pentaho-server ~]# mkdir /opt/software
# 用于軟件具體安裝路徑
[root@pentaho-server ~]# mkdir /opt/module
2、上傳pentaho-server-ce-9.1.0.0-324.zip
安裝包至/opt/software/
目錄下
3、解壓安裝包
[root@pentaho-server software]# unzip pentaho-server-ce-9.1.0.0-324.zip
注:若出現(xiàn)-bash: unzip: command not found錯誤,則通過下面命令先安裝unzip和zip程序后再進行解壓
[root@pentaho-server software]# yum install -y unzip zip
4、將解壓后的pentaho-server
目錄移動至/opt/module/
目錄下
[root@pentaho-server software]# mv pentaho-server /opt/module/
5、切換存儲庫為MySQL并修改對應的配置文件
5.1、更改MySQL腳本中默認密碼以及字符集編碼為UTF-8,密碼自定義
[root@pentaho-server mysql]# vim create_jcr_mysql.sql
[root@pentaho-server mysql]# vim create_quartz_mysql.sql
[root@pentaho-server mysql]# vim create_repository_mysql.sql
5.2、登錄MySQL運行以上SQL腳本
[root@pentaho-server pentaho-server]# mysql -uroot -p
mysql> source /opt/module/pentaho-server/data/mysql/create_jcr_mysql.sql;
mysql> source /opt/module/pentaho-server/data/mysql/create_quartz_mysql.sql;
mysql> source /opt/module/pentaho-server/data/mysql/create_repository_mysql.sql;
5.3、設(shè)置 Quartz
[root@pentaho-server pentaho-server]# vim pentaho-solutions/system/quartz/quartz.properties
5.3.1、找到 #_replace_jobstore_properties 部分并設(shè)置 org.quartz.jobStore.driverDelegateClass
# 修改前
org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.PostgreSQLDelegate
# 修改后
org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate
5.3.2、找到 # Configure Datasources 部分并將 org.quartz.dataSource.myDS.jndiURL 設(shè)置為 Quartz
5.4、修改applicationContext-spring-security-jdbc.properties
配置文件
[root@pentaho-server pentaho-server]# vim pentaho-solutions/system/applicationContext-spring-security-jdbc.properties
datasource.driver.classname=com.mysql.jdbc.Driver
datasource.url=jdbc:mysql://localhost:3306/hibernate
datasource.username=hibuser
datasource.password=!QAZ2wsx
datasource.validation.query=SELECT 1
注意:請確保配置文件中的程序驅(qū)動類
、IP地址
、端口
、用戶
及密碼
與您配置的MySQL環(huán)境相對應。
5.5、修改jdbc.properties
配置文件
[root@pentaho-server pentaho-server]# vim pentaho-solutions/system/simple-jndi/jdbc.properties
SampleData/type=javax.sql.DataSource
SampleData/driver=com.mysql.jdbc.Driver
SampleData/url=jdbc:mysql://localhost:3306/hibernate
SampleData/user=hibuser
SampleData/password=!QAZ2wsx
Hibernate/type=javax.sql.DataSource
Hibernate/driver=com.mysql.jdbc.Driver
Hibernate/url=jdbc:mysql://localhost:3306/hibernate
Hibernate/user=hibuser
Hibernate/password=!QAZ2wsx
Quartz/type=javax.sql.DataSource
Quartz/driver=com.mysql.jdbc.Driver
Quartz/url=jdbc:mysql://localhost:3306/quartz
Quartz/user=pentaho_user
Quartz/password=!QAZ2wsx
Shark/type=javax.sql.DataSource
Shark/driver=com.mysql.jdbc.Driver
Shark/url=jdbc:mysql://localhost:3306/hbibernate
Shark/user=hibuser
Shark/password=!QAZ2wsx
SampleDataAdmin/type=javax.sql.DataSource
SampleDataAdmin/driver=com.mysql.jdbc.Driver
SampleDataAdmin/url=jdbc:mysql://localhost:3306/hibernate
SampleDataAdmin/user=hibuser
SampleDataAdmin/password=!QAZ2wsx
5.6、設(shè)置 Hibernate
5.6.1、修改hibernate.properties
配置文件
[root@pentaho-server pentaho-server]# vim pentaho-solutions/system/applicationContext-spring-security-hibernate.properties
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/hibernate
jdbc.username=hibuser
jdbc.password=!QAZ2wsx
hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
注意:請確保配置文件中的程序驅(qū)動類
、IP地址
、端口
、用戶
及密碼
與您配置的MySQL環(huán)境相對應。
[root@pentaho-server pentaho-server]# vim pentaho-solutions/system/dialects/mysql5/applicationContext-spring-security-hibernate.properties
5.6.2、修改hibernate-settings.xml
配置文件
[root@pentaho-server pentaho-server]# vim pentaho-solutions/system/hibernate/hibernate-settings.xml
<!-- 修改前 -->
<config-file>system/hibernate/postgresql.hibernate.cfg.xml</config-file><!-- 修改后 -->
<config-file>system/hibernate/mysql5.hibernate.cfg.xml</config-file>
5.6.3、修改mysql5.hibernate.cfg.xml
配置文件
[root@pentaho-server pentaho-server]# vim pentaho-solutions/system/hibernate/mysql5.hibernate.cfg.xml
<!-- MySQL Configuration -->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost:3306/hibernate</property>
<property name="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
<property name="connection.username">hibuser</property>
<property name="connection.password">!QAZ2wsx</property>
<property name="connection.pool_size">10</property>
<property name="show_sql">false</property>
<property name="hibernate.jdbc.use_streams_for_binary">true</property>
5.7、用 MySQL 版本替換審計日志文件的默認版本
由于使用 MySQL 來托管 Pentaho Repository,所以需要將 audit_sql.xml 配置文件替換為為 MySQL 對應的配置文件。
替換方法:
-
找到 pentaho-solutions/system/dialects/mysql5/audit_sql.xml 文件。
-
將其復制到 pentaho-solutions/system目錄中。
[root@pentaho-server pentaho-server]# cp pentaho-solutions/system/dialects/mysql5/audit_sql.xml pentaho-solutions/system/
5.8、將Jackrabbit的配置文件repository.xml
的倉庫信息配置為MySQL
[root@pentaho-server pentaho-server]# vim pentaho-solutions/system/jackrabbit/repository.xml
注意:請確保配置文件中的程序驅(qū)動類
、IP地址
、端口
、用戶
及密碼
與您配置的MySQL環(huán)境相對應。
注釋如下配置:
<FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem"><param name="path" value="${rep.home}/repository"/>
</FileSystem>
添加如下配置:
<FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem"><param name="driver" value="com.mysql.jdbc.Driver"/><param name="url" value="jdbc:mysql://localhost:3306/jackrabbit"/><param name="user" value="jcr_user"/><param name="password" value="!QAZ2wsx"/><param name="schema" value="mysql"/><param name="schemaObjectPrefix" value="fs_repos_"/>
</FileSystem>
注釋如下配置:
<DataStore class="org.apache.jackrabbit.core.data.FileDataStore"/>
添加如下配置:
<DataStore class="org.apache.jackrabbit.core.data.db.DbDataStore"><param name="url" value="jdbc:mysql://localhost:3306/jackrabbit"/><param name="user" value="jcr_user"/><param name="password" value="!QAZ2wsx"/><param name="databaseType" value="mysql"/><param name="driver" value="com.mysql.jdbc.Driver"/><param name="minRecordLength" value="1024"/><param name="maxConnections" value="3"/><param name="copyWhenReading" value="true"/><param name="tablePrefix" value=""/><param name="schemaObjectPrefix" value="ds_repos_"/>
</DataStore>
注釋如下配置:
<FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem"><param name="path" value="${wsp.home}"/>
</FileSystem>
添加如下配置:
<FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem"><param name="driver" value="com.mysql.jdbc.Driver"/><param name="url" value="jdbc:mysql://localhost:3306/jackrabbit"/><param name="user" value="jcr_user"/><param name="password" value="!QAZ2wsx"/><param name="schema" value="mysql"/><param name="schemaObjectPrefix" value="fs_ws_"/>
</FileSystem>
注釋如下配置:
<PersistenceManager class="org.apache.jackrabbit.core.persistence.pool.H2PersistenceManager"><param name="url" value="jdbc:h2:${wsp.home}/db"/><param name="schemaObjectPrefix" value="${wsp.name}_"/>
</PersistenceManager>
添加如下配置:
<PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.MySqlPersistenceManager"><param name="driver" value="com.mysql.jdbc.Driver"/><param name="url" value="jdbc:mysql://localhost:3306/jackrabbit"/><param name="user" value="jcr_user" /><param name="password" value="!QAZ2wsx" /><param name="schema" value="mysql"/><param name="schemaObjectPrefix" value="${wsp.name}_pm_ws_"/>
</PersistenceManager>
注釋如下配置:
<FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem"><param name="path" value="${rep.home}/version" />
</FileSystem>
添加如下配置:
<FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem"><param name="driver" value="com.mysql.jdbc.Driver"/><param name="url" value="jdbc:mysql://localhost:3306/jackrabbit"/><param name="user" value="jcr_user"/><param name="password" value="!QAZ2wsx"/><param name="schema" value="mysql"/><param name="schemaObjectPrefix" value="fs_ver_"/>
</FileSystem>
注釋如下配置:
<PersistenceManager class="org.apache.jackrabbit.core.persistence.pool.H2PersistenceManager"><param name="url" value="jdbc:h2:${rep.home}/version/db"/><param name="schemaObjectPrefix" value="version_"/>
</PersistenceManager>
添加如下配置:
<PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.MySqlPersistenceManager"><param name="driver" value="com.mysql.jdbc.Driver"/><param name="url" value="jdbc:mysql://localhost:3306/jackrabbit"/><param name="user" value="jcr_user" /><param name="password" value="!QAZ2wsx" /><param name="schema" value="mysql"/><param name="schemaObjectPrefix" value="pm_ver_"/>
</PersistenceManager>
注釋如下配置:
<Journal class="org.apache.jackrabbit.core.journal.MemoryJournal"/>
添加如下配置:
<Journal class="org.apache.jackrabbit.core.journal.DatabaseJournal"><param name="revision" value="${rep.home}/revision.log"/><param name="url" value="jdbc:mysql://localhost:3306/jackrabbit"/><param name="driver" value="com.mysql.jdbc.Driver"/><param name="user" value="jcr_user"/><param name="password" value="!QAZ2wsx"/><param name="schema" value="mysql"/><param name="databaseType" value="mysql"/><param name="janitorEnabled" value="true"/><param name="janitorSleep" value="86400"/><param name="janitorFirstRunHourOfDay" value="3"/>
</Journal>
5.9、下載MySQL的JDBC連接驅(qū)動,將其上傳到/opt/software
目錄中,然后將其復制到pentaho-server/tomcat/lib
目錄中
# 刪除舊版驅(qū)動
[root@pentaho-server software]# rm -rf /opt/module/pentaho-server/tomcat/lib/mysql-connector-java-5.1.17.jar# 復制新版驅(qū)動
[root@pentaho-server software]# cp mysql-connector-java-5.1.34.jar /opt/module/pentaho-server/tomcat/lib/
5.10、修改Tomcat配置文件中的JDBC連接信息
[root@pentaho-server pentaho-server]# vim tomcat/webapps/pentaho/META-INF/context.xml
注意:請確保配置文件中的程序驅(qū)動類
、IP地址
、端口
、用戶
及密碼
與您配置的MySQL環(huán)境相對應。
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/pentaho" docbase="webapps/pentaho/"><Resource validationQuery="select 1" url="jdbc:mysql://localhost:3306/hibernate" driverClassName="com.mysql.jdbc.Driver" password="!QAZ2wsx" username="hibuser" initialSize="0" maxActive="20" maxIdle="10" maxWait="10000" factory="org.apache.commons.dbcp.BasicDataSourceFactory" type="javax.sql.DataSource" auth="Container" name="jdbc/Hibernate"/><Resource validationQuery="select 1" url="jdbc:mysql://localhost:3306/quartz" driverClassName="com.mysql.jdbc.Driver" password="!QAZ2wsx" username="pentaho_user" testOnBorrow="true" initialSize="0" maxActive="20" maxIdle="10" maxWait="10000" factory="org.apache.commons.dbcp.BasicDataSourceFactory" type="javax.sql.DataSource" auth="Container" name="jdbc/Quartz"/><Resource name="jdbc/jackrabbit" auth="Container" type="javax.sql.DataSource" factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxActive="20" minIdle="0" maxIdle="5" initialSize="0" maxWait="10000" username="jcr_user" password="!QAZ2wsx" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/jackrabbit" validationQuery="select 1"/>
</Context>
6、將tomcat/webapps/pentaho/WEB-INF/web.xml
配置文件的如下配置項 注釋掉
[root@pentaho-server pentaho-server]# vim tomcat/webapps/pentaho/WEB-INF/web.xml
<!-- [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] -->
7、將systemListeners.xml
配置文件的如下配置項 注釋掉
[root@pentaho-server pentaho-server]# vim pentaho-solutions/system/systemListeners.xml
<!--
<bean id="pooledDataSourceSystemListener" class="org.pentaho.platform.engine.services.connection.datasource.dbcp.PooledDatasourceSystemListener" />
--><!--
<bean id="nonPooledDataSourceSystemListener" class="org.pentaho.platform.engine.services.connection.datasource.dbcp.NonPooledDatasourceSystemListener"/>
--><!--
<bean id="dynamicallyPooledDataSourceSystemListener" class="org.pentaho.platform.engine.services.connection.datasource.dbcp.DynamicallyPooledDatasourceSystemListener" />
--><!--
<bean id="quartzSystemListener" class="org.pentaho.platform.scheduler2.quartz.EmbeddedQuartzSystemListener" />
-->
8、修改start-pentaho.sh
啟動腳本(有顯卡的系統(tǒng)可忽略此步驟)
注意:沒有顯卡的系統(tǒng),在第一次啟動Pentaho Server之前,需要將 -Djava.awt.headless=true 參數(shù)添加到 CATALINA_OPTS 參數(shù)列表中,整個CATALINA_OPTS參數(shù)列表如下
[root@pentaho-server pentaho-server]# vim start-pentaho.sh
將CATALINA_OPTS
的值替換為
CATALINA_OPTS="-Djava.awt.headless=true -Xms4096m -Xmx6144m -XX:MaxPermSize=256m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Dfile.encoding=utf8 -DDI_HOME=\"$DI_HOME\""
四、啟動Pentaho Server
1、到pentaho-server的安裝目錄下執(zhí)行下面的啟動命令
[root@pentaho-server pentaho-server]# ./start-pentaho.sh
2、查看日志是否有報錯信息
[root@pentaho-server ~]# tail -fn 500 /opt/module/pentaho-server/tomcat/logs/pentaho.log
3、瀏覽器訪問 節(jié)點ip:8080
即可訪問到登錄頁面
4、登錄賬戶,默認用戶名 :admin,默認密碼:password
5、切換語言為簡體中文
時會發(fā)現(xiàn)日志報如下錯誤
報錯信息:
解決方法:
1、查找messages_zh.properties
文件所在的路徑
[root@pentaho-server pentaho-server]# find / -name messages_zh.properties
2、查找確實此文件的路徑
3、將查找到的messages_zh.properties
文件復制到/opt/module/pentaho-server/pentaho-solutions/system/pentaho-cdf-dd/lang/
目錄中
五、客戶端連接測試
1、打開客戶端工具,點擊右上角的Connect
2、點擊Get Started
3、填寫相應連接信息后點擊Finish
若連接信息正確無誤,既可以看到連接已創(chuàng)建且可用的提示信息,然后可以直接點擊Connect Now
或者點擊Finish
之后再連接
4、輸入用戶名和密碼后點擊Connect
5、可以測試創(chuàng)建一個 作業(yè)或者轉(zhuǎn)換
并將其保存到合適的位置
6、訪問WEB端瀏覽文件存儲的對應位置即可查看到上一步保存的轉(zhuǎn)換
Pentaho Server集群搭建:《在Linux中搭建Pentaho Server集群,并使用MySQL作為存儲庫、Nginx做反向代理與負載均衡》
本教程到此結(jié)束,如有錯誤望小伙伴們在評論區(qū)指出,謝謝!