在Linux中安装Pentaho Server 9.1并使用MySQL作为存储库

2024-02-13 19:18

本文主要是介绍在Linux中安装Pentaho Server 9.1并使用MySQL作为存储库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在Linux中安装Pentaho Server 9.1并使用MySQL作为存储库

一、本文环境

应用名称CentOS LinuxPentaho Server CEMySQLJDK
应用版本7.99.15.71.8

二、准备工作

1、下载pentaho-server-ce-9.1.0.0-324安装包

1.1、开源仓库渠道

下载链接:https://sourceforge.net/projects/pentaho/files/Pentaho%209.1/server/

在这里插入图片描述

1.2、百度网盘渠道

下载链接:https://pan.baidu.com/s/1UB91ACgdG3bUBSP5keRa3w
提 取 码: y2ql

2、安装JDK(省略)

3、安装MySQL(省略)

三、安装Pentaho Server

1、在/opt目录下创建softwaremodule两个目录

# 用于存放软件安装包
[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

在这里插入图片描述

注:若出现-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、设置 Quartz
[root@pentaho-server pentaho-server]# vim pentaho-solutions/system/quartz/quartz.properties
5.3.1、找到 #_replace_jobstore_properties 部分并设置 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 设置为 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

注意:请确保配置文件中的程序驱动类IP地址端口用户密码与您配置的MySQL环境相对应。

在这里插入图片描述

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、设置 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

注意:请确保配置文件中的程序驱动类IP地址端口用户密码与您配置的MySQL环境相对应。

在这里插入图片描述

[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

注意:请确保配置文件中的程序驱动类IP地址端口用户密码与您配置的MySQL环境相对应。

注释如下配置:

<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连接驱动,将其上传到/opt/software目录中,然后将其复制到pentaho-server/tomcat/lib目录中

在这里插入图片描述

# 删除旧版驱动
[root@pentaho-server software]# rm -rf /opt/module/pentaho-server/tomcat/lib/mysql-connector-java-5.1.17.jar# 复制新版驱动
[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

注意:请确保配置文件中的程序驱动类IP地址端口用户密码与您配置的MySQL环境相对应。

<?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启动脚本(有显卡的系统可忽略此步骤)

注意:没有显卡的系统,在第一次启动Pentaho Server之前,需要将 -Djava.awt.headless=true 参数添加到 CATALINA_OPTS 参数列表中,整个CATALINA_OPTS参数列表如下

[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的安装目录下执行下面的启动命令

[root@pentaho-server pentaho-server]# ./start-pentaho.sh

在这里插入图片描述

2、查看日志是否有报错信息

[root@pentaho-server ~]# tail -fn 500 /opt/module/pentaho-server/tomcat/logs/pentaho.log

在这里插入图片描述

3、浏览器访问 节点ip:8080 即可访问到登录页面

在这里插入图片描述

4、登录账户,默认用户名 :admin,默认密码:password

在这里插入图片描述

5、切换语言为简体中文时会发现日志报如下错误

在这里插入图片描述

报错信息:

在这里插入图片描述

解决方法:

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

若连接信息正确无误,既可以看到连接已创建且可用的提示信息,然后可以直接点击Connect Now或者点击Finish之后再连接

在这里插入图片描述
在这里插入图片描述

4、输入用户名和密码后点击Connect

在这里插入图片描述

5、可以测试创建一个 作业或者转换 并将其保存到合适的位置

在这里插入图片描述

6、访问WEB端浏览文件存储的对应位置即可查看到上一步保存的转换

在这里插入图片描述
Pentaho Server集群搭建:《在Linux中搭建Pentaho Server集群,并使用MySQL作为存储库、Nginx做反向代理与负载均衡》
本教程到此结束,如有错误望小伙伴们在评论区指出,谢谢!

这篇关于在Linux中安装Pentaho Server 9.1并使用MySQL作为存储库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/706398

相关文章

Linux换行符的使用方法详解

《Linux换行符的使用方法详解》本文介绍了Linux中常用的换行符LF及其在文件中的表示,展示了如何使用sed命令替换换行符,并列举了与换行符处理相关的Linux命令,通过代码讲解的非常详细,需要的... 目录简介检测文件中的换行符使用 cat -A 查看换行符使用 od -c 检查字符换行符格式转换将

使用Jackson进行JSON生成与解析的新手指南

《使用Jackson进行JSON生成与解析的新手指南》这篇文章主要为大家详细介绍了如何使用Jackson进行JSON生成与解析处理,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 核心依赖2. 基础用法2.1 对象转 jsON(序列化)2.2 JSON 转对象(反序列化)3.

Linux系统配置NAT网络模式的详细步骤(附图文)

《Linux系统配置NAT网络模式的详细步骤(附图文)》本文详细指导如何在VMware环境下配置NAT网络模式,包括设置主机和虚拟机的IP地址、网关,以及针对Linux和Windows系统的具体步骤,... 目录一、配置NAT网络模式二、设置虚拟机交换机网关2.1 打开虚拟机2.2 管理员授权2.3 设置子

使用Python实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.

Elasticsearch 在 Java 中的使用教程

《Elasticsearch在Java中的使用教程》Elasticsearch是一个分布式搜索和分析引擎,基于ApacheLucene构建,能够实现实时数据的存储、搜索、和分析,它广泛应用于全文... 目录1. Elasticsearch 简介2. 环境准备2.1 安装 Elasticsearch2.2 J

使用C#代码在PDF文档中添加、删除和替换图片

《使用C#代码在PDF文档中添加、删除和替换图片》在当今数字化文档处理场景中,动态操作PDF文档中的图像已成为企业级应用开发的核心需求之一,本文将介绍如何在.NET平台使用C#代码在PDF文档中添加、... 目录引言用C#添加图片到PDF文档用C#删除PDF文档中的图片用C#替换PDF文档中的图片引言在当

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

Java中List的contains()方法的使用小结

《Java中List的contains()方法的使用小结》List的contains()方法用于检查列表中是否包含指定的元素,借助equals()方法进行判断,下面就来介绍Java中List的c... 目录详细展开1. 方法签名2. 工作原理3. 使用示例4. 注意事项总结结论:List 的 contain

C#使用SQLite进行大数据量高效处理的代码示例

《C#使用SQLite进行大数据量高效处理的代码示例》在软件开发中,高效处理大数据量是一个常见且具有挑战性的任务,SQLite因其零配置、嵌入式、跨平台的特性,成为许多开发者的首选数据库,本文将深入探... 目录前言准备工作数据实体核心技术批量插入:从乌龟到猎豹的蜕变分页查询:加载百万数据异步处理:拒绝界面

Android中Dialog的使用详解

《Android中Dialog的使用详解》Dialog(对话框)是Android中常用的UI组件,用于临时显示重要信息或获取用户输入,本文给大家介绍Android中Dialog的使用,感兴趣的朋友一起... 目录android中Dialog的使用详解1. 基本Dialog类型1.1 AlertDialog(