丰台区网站建设公司,网站建设-丹东,wordpress theme my login,系统门户网站建设详细功能下载地址
Kettle 是一个开源的数据集成工具#xff0c;它是 Pentaho Data Integration#xff08;PDI#xff09;项目的一部分。要访问 Kettle 的官方网站#xff0c;可以通过访问其母公司 Hitachi Vantara 的网站来找到相关信息 官方网站#xff1a;https://www.hitachi…下载地址
Kettle 是一个开源的数据集成工具它是 Pentaho Data IntegrationPDI项目的一部分。要访问 Kettle 的官方网站可以通过访问其母公司 Hitachi Vantara 的网站来找到相关信息 官方网站https://www.hitachivantara.com/en-us/products/data-management-analytics.html 下载地址:https://www.hitachivantara.com/en-us/products/pentaho-plus-platform/data-integration-analytics/pentaho-community-edition.html
安装
解压
windows和Linux安装包是一样的解压命令 unzip pentaho-server-ce-9.4.0.0-343.zip
数据库初始化
选择mysql作为存储库找到对应的sql初始化文件自行初始化数据库安装略 提供的脚本编码和密码按需要进行修改 SQL附件参考-- jcr
CREATE DATABASE IF NOT EXISTS jackrabbit DEFAULT CHARACTER SET utf8;
CREATE USER jcr_user% identified by !QAZ2wsx;
GRANT ALL PRIVILEGES ON jackrabbit.* TO jcr_user% WITH GRANT OPTION;-- quartz
CREATE DATABASE IF NOT EXISTS quartz DEFAULT CHARACTER SET utf8;
CREATE USER pentaho_user% identified by !QAZ2wsx;
GRANT ALL PRIVILEGES ON quartz.* to pentaho_user% WITH GRANT OPTION;
USE quartz;
DROP TABLE IF EXISTS QRTZ5_JOB_LISTENERS;
DROP TABLE IF EXISTS QRTZ5_TRIGGER_LISTENERS;
DROP TABLE IF EXISTS QRTZ5_FIRED_TRIGGERS;
DROP TABLE IF EXISTS QRTZ5_PAUSED_TRIGGER_GRPS;
DROP TABLE IF EXISTS QRTZ5_SCHEDULER_STATE;
DROP TABLE IF EXISTS QRTZ5_LOCKS;
DROP TABLE IF EXISTS QRTZ5_SIMPLE_TRIGGERS;
DROP TABLE IF EXISTS QRTZ5_CRON_TRIGGERS;
DROP TABLE IF EXISTS QRTZ5_BLOB_TRIGGERS;
DROP TABLE IF EXISTS QRTZ5_TRIGGERS;
DROP TABLE IF EXISTS QRTZ5_JOB_DETAILS;
DROP TABLE IF EXISTS QRTZ5_CALENDARS;
CREATE TABLE QRTZ5_JOB_DETAILS(JOB_NAME VARCHAR(200) NOT NULL,JOB_GROUP VARCHAR(200) NOT NULL,DESCRIPTION VARCHAR(250) NULL,JOB_CLASS_NAME VARCHAR(250) NOT NULL,IS_DURABLE VARCHAR(1) NOT NULL,IS_VOLATILE VARCHAR(1) NOT NULL,IS_STATEFUL VARCHAR(1) NOT NULL,REQUESTS_RECOVERY VARCHAR(1) NOT NULL,JOB_DATA BLOB NULL,PRIMARY KEY (JOB_NAME,JOB_GROUP)
);
CREATE TABLE QRTZ5_JOB_LISTENERS(JOB_NAME VARCHAR(200) NOT NULL,JOB_GROUP VARCHAR(200) NOT NULL,JOB_LISTENER VARCHAR(200) NOT NULL,PRIMARY KEY (JOB_NAME,JOB_GROUP,JOB_LISTENER),FOREIGN KEY (JOB_NAME,JOB_GROUP)REFERENCES QRTZ5_JOB_DETAILS(JOB_NAME,JOB_GROUP)
);
CREATE TABLE QRTZ5_TRIGGERS(TRIGGER_NAME VARCHAR(200) NOT NULL,TRIGGER_GROUP VARCHAR(200) NOT NULL,JOB_NAME VARCHAR(200) NOT NULL,JOB_GROUP VARCHAR(200) NOT NULL,IS_VOLATILE VARCHAR(1) NOT NULL,DESCRIPTION VARCHAR(250) NULL,NEXT_FIRE_TIME BIGINT(13) NULL,PREV_FIRE_TIME BIGINT(13) NULL,PRIORITY INTEGER NULL,TRIGGER_STATE VARCHAR(16) NOT NULL,TRIGGER_TYPE VARCHAR(8) NOT NULL,START_TIME BIGINT(13) NOT NULL,END_TIME BIGINT(13) NULL,CALENDAR_NAME VARCHAR(200) NULL,MISFIRE_INSTR SMALLINT(2) NULL,JOB_DATA BLOB NULL,PRIMARY KEY (TRIGGER_NAME,TRIGGER_GROUP),FOREIGN KEY (JOB_NAME,JOB_GROUP)REFERENCES QRTZ5_JOB_DETAILS(JOB_NAME,JOB_GROUP)
);
CREATE TABLE QRTZ5_SIMPLE_TRIGGERS(TRIGGER_NAME VARCHAR(200) NOT NULL,TRIGGER_GROUP VARCHAR(200) NOT NULL,REPEAT_COUNT BIGINT(7) NOT NULL,REPEAT_INTERVAL BIGINT(12) NOT NULL,TIMES_TRIGGERED BIGINT(10) NOT NULL,PRIMARY KEY (TRIGGER_NAME,TRIGGER_GROUP),FOREIGN KEY (TRIGGER_NAME,TRIGGER_GROUP)REFERENCES QRTZ5_TRIGGERS(TRIGGER_NAME,TRIGGER_GROUP)
);
CREATE TABLE QRTZ5_CRON_TRIGGERS(TRIGGER_NAME VARCHAR(200) NOT NULL,TRIGGER_GROUP VARCHAR(200) NOT NULL,CRON_EXPRESSION VARCHAR(200) NOT NULL,TIME_ZONE_ID VARCHAR(80),PRIMARY KEY (TRIGGER_NAME,TRIGGER_GROUP),FOREIGN KEY (TRIGGER_NAME,TRIGGER_GROUP)REFERENCES QRTZ5_TRIGGERS(TRIGGER_NAME,TRIGGER_GROUP)
);
CREATE TABLE QRTZ5_BLOB_TRIGGERS(TRIGGER_NAME VARCHAR(200) NOT NULL,TRIGGER_GROUP VARCHAR(200) NOT NULL,BLOB_DATA BLOB NULL,PRIMARY KEY (TRIGGER_NAME,TRIGGER_GROUP),FOREIGN KEY (TRIGGER_NAME,TRIGGER_GROUP)REFERENCES QRTZ5_TRIGGERS(TRIGGER_NAME,TRIGGER_GROUP)
);
CREATE TABLE QRTZ5_TRIGGER_LISTENERS(TRIGGER_NAME VARCHAR(200) NOT NULL,TRIGGER_GROUP VARCHAR(200) NOT NULL,TRIGGER_LISTENER VARCHAR(200) NOT NULL,PRIMARY KEY (TRIGGER_NAME,TRIGGER_GROUP,TRIGGER_LISTENER),FOREIGN KEY (TRIGGER_NAME,TRIGGER_GROUP)REFERENCES QRTZ5_TRIGGERS(TRIGGER_NAME,TRIGGER_GROUP)
);
CREATE TABLE QRTZ5_CALENDARS(CALENDAR_NAME VARCHAR(200) NOT NULL,CALENDAR BLOB NOT NULL,PRIMARY KEY (CALENDAR_NAME)
);
CREATE TABLE QRTZ5_PAUSED_TRIGGER_GRPS(TRIGGER_GROUP VARCHAR(200) NOT NULL,PRIMARY KEY (TRIGGER_GROUP)
);
CREATE TABLE QRTZ5_FIRED_TRIGGERS(ENTRY_ID VARCHAR(95) NOT NULL,TRIGGER_NAME VARCHAR(200) NOT NULL,TRIGGER_GROUP VARCHAR(200) NOT NULL,IS_VOLATILE VARCHAR(1) NOT NULL,INSTANCE_NAME VARCHAR(200) NOT NULL,FIRED_TIME BIGINT(13) NOT NULL,PRIORITY INTEGER NOT NULL,STATE VARCHAR(16) NOT NULL,JOB_NAME VARCHAR(200) NULL,JOB_GROUP VARCHAR(200) NULL,IS_STATEFUL VARCHAR(1) NULL,REQUESTS_RECOVERY VARCHAR(1) NULL,PRIMARY KEY (ENTRY_ID)
);
CREATE TABLE QRTZ5_SCHEDULER_STATE(INSTANCE_NAME VARCHAR(200) NOT NULL,LAST_CHECKIN_TIME BIGINT(13) NOT NULL,CHECKIN_INTERVAL BIGINT(13) NOT NULL,PRIMARY KEY (INSTANCE_NAME)
);
CREATE TABLE QRTZ5_LOCKS(LOCK_NAME VARCHAR(40) NOT NULL,PRIMARY KEY (LOCK_NAME)
);
INSERT INTO QRTZ5_LOCKS values(TRIGGER_ACCESS);
INSERT INTO QRTZ5_LOCKS values(JOB_ACCESS);
INSERT INTO QRTZ5_LOCKS values(CALENDAR_ACCESS);
INSERT INTO QRTZ5_LOCKS values(STATE_ACCESS);
INSERT INTO QRTZ5_LOCKS values(MISFIRE_ACCESS);
CREATE DATABASE IF NOT EXISTS hibernate DEFAULT CHARACTER SET utf8;
-- repository
USE hibernate;
CREATE USER hibuser% identified by !QAZ2wsx;
GRANT ALL PRIVILEGES ON hibernate.* TO hibuser% WITH GRANT OPTION;
FLUSH PRIVILEGES;配置文件修改
基本上都是配置Mysql数据库信息
pentaho-server/pentaho-solutions/system/quartz/quartz.properties
#org.quartz.jobStore.driverDelegateClass org.quartz.impl.jdbcjobstore.PostgreSQLDelegate
org.quartz.jobStore.driverDelegateClass org.quartz.impl.jdbcjobstore.StdJDBCDelegate pentaho-server/pentaho-solutions/system/applicationContext-spring-security-jdbc.properties
datasource.driver.classnamecom.mysql.jdbc.Driver
datasource.urljdbc:mysql://xxxx:3306/hibernate
datasource.usernamehibuser
datasource.password!QAZ2wsx
datasource.validation.querySELECT 1
datasource.pool.max.wait-1
datasource.pool.max.active8pentaho-server/pentaho-solutions/system/simple-jndi/jdbc.properties
SampleData/typejavax.sql.DataSource
SampleData/drivercom.mysql.cj.jdbc.Driver
SampleData/url.cj.jdbc:mysql://xxxx:3306/hibernate
SampleData/userhibuser
SampleData/password!QAZ2wsx
Hibernate/typejavax.sql.DataSource
Hibernate/drivercom.mysql.cj.jdbc.Driver
Hibernate/url.cj.jdbc:mysql://xxxx:3306/hibernate
Hibernate/userhibuser
Hibernate/password!QAZ2wsx
Quartz/typejavax.sql.DataSource
Quartz/drivercom.mysql.cj.jdbc.Driver
Quartz/url.cj.jdbc:mysql://xxxx:3306/quartz
Quartz/userpentaho_user
Quartz/password!QAZ2wsx
Shark/typejavax.sql.DataSource
Shark/drivercom.mysql.cj.jdbc.Driver
Shark/url.cj.jdbc:mysql://xxxx:3306/hbibernate
Shark/userhibuser
Shark/password!QAZ2wsx
SampleDataAdmin/typejavax.sql.DataSource
SampleDataAdmin/drivercom.mysql.cj.jdbc.Driver
SampleDataAdmin/url.cj.jdbc:mysql://xxxx:3306/hibernate
SampleDataAdmin/userhibuser
SampleDataAdmin/password!QAZ2wsxpentaho-server/pentaho-solutions/system/applicationContext-spring-security-hibernate.properties
jdbc.drivercom.mysql.cj.jdbc.Driver
jdbc.urljdbc:mysql://xxx:3306/hibernate
jdbc.usernamehibuser
jdbc.password!QAZ2wsx
hibernate.dialectorg.hibernate.dialect.MySQL5Dialect还有一处需要修改dialects/mysql5/applicationContext-spring-security-hibernate.properties
pentaho-server/pentaho-solutions/system/hibernate/hibernate-settings.xml
config-filesystem/hibernate/mysql5.hibernate.cfg.xml/config-filepentaho-server/pentaho-solutions/system/hibernate/mysql5.hibernate.cfg.xml
property nameconnection.driver_classcom.mysql.cj.jdbc.Driver/property
property nameconnection.urljdbc:mysql://xxxx:3306/hibernate/property
property namedialectorg.hibernate.dialect.MySQL5InnoDBDialect/property
property nameconnection.usernamehibuser/property
property nameconnection.password!QAZ2wsx/property
property nameconnection.pool_size10/property
property nameshow_sqlfalse/property
property namehibernate.jdbc.use_streams_for_binarytrue/property替换audit_sql.xml
pentaho-server/pentaho-solutions/system/jackrabbit/repository.xml
要改的地方有点多
!--FileSystem classorg.apache.jackrabbit.core.fs.local.LocalFileSystemparam namepath value${rep.home}/repository//FileSystem
--FileSystem classorg.apache.jackrabbit.core.fs.db.DbFileSystemparam namedriver valuecom.mysql.cj.jdbc.Driver/param nameurl valuejdbc:mysql://xxxx:3306/jackrabbit/param nameuser valuejcr_user/param namepassword value!QAZ2wsx/param nameschema valuemysql/param nameschemaObjectPrefix valuefs_repos_/
/FileSystem!-- DataStore classorg.apache.jackrabbit.core.data.FileDataStore/--
DataStore classorg.apache.jackrabbit.core.data.db.DbDataStoreparam nameurl valuejdbc:mysql://xxxx:3306/jackrabbit/param nameuser valuejcr_user/param namepassword value!QAZ2wsx/param namedatabaseType valuemysql/param namedriver valuecom.mysql.cj.jdbc.Driver/param nameminRecordLength value1024/param namemaxConnections value3/param namecopyWhenReading valuetrue/param nametablePrefix value/param nameschemaObjectPrefix valueds_repos_/
/DataStore !-- FileSystem classorg.apache.jackrabbit.core.fs.local.LocalFileSystemparam namepath value${rep.home}/version / --
FileSystem classorg.apache.jackrabbit.core.fs.db.DbFileSystemparam namedriver valuecom.mysql.cj.jdbc.Driver/param nameurl valuejdbc:mysql://xxxx:3306/jackrabbit/param nameuser valuejcr_user/param namepassword value!QAZ2wsx/param nameschema valuemysql/param nameschemaObjectPrefix valuefs_ws_/
/FileSystem!--PersistenceManager classorg.apache.jackrabbit.core.persistence.pool.H2PersistenceManagerparam nameurl valuejdbc:h2:${wsp.home}/db/param nameschemaObjectPrefix value${wsp.name}_//PersistenceManager--
PersistenceManager classorg.apache.jackrabbit.core.persistence.bundle.MySqlPersistenceManagerparam namedriver valuecom.mysql.cj.jdbc.Driver/param nameurl valuejdbc:mysql://221.221.221.7:3306/jackrabbit/param nameuser valuejcr_user /param namepassword value!QAZ2wsx /param nameschema valuemysql/param nameschemaObjectPrefix value${wsp.name}_pm_ws_/
/PersistenceManager!--FileSystem classorg.apache.jackrabbit.core.fs.local.LocalFileSystemparam namepath value${wsp.home}//FileSystem--
FileSystem classorg.apache.jackrabbit.core.fs.db.DbFileSystemparam namedriver valuecom.mysql.cj.jdbc.Driver/param nameurl valuejdbc:mysql://xxxx:3306/jackrabbit/param nameuser valuejcr_user/param namepassword value!QAZ2wsx/param nameschema valuemysql/param nameschemaObjectPrefix valuefs_ver_/
/FileSystem!--PersistenceManager classorg.apache.jackrabbit.core.persistence.pool.H2PersistenceManagerparam nameurl valuejdbc:h2:${rep.home}/version/db/param nameschemaObjectPrefix valueversion_//PersistenceManager--
PersistenceManager classorg.apache.jackrabbit.core.persistence.bundle.MySqlPersistenceManagerparam namedriver valuecom.mysql.cj.jdbc.Driver/param nameurl valuejdbc:mysql://221.221.221.7:3306/jackrabbit/param nameuser valuejcr_user /param namepassword value!QAZ2wsx /param nameschema valuemysql/param nameschemaObjectPrefix valuepm_ver_/
/PersistenceManager!-- Journal classorg.apache.jackrabbit.core.journal.MemoryJournal/ --
Journal classorg.apache.jackrabbit.core.journal.DatabaseJournalparam namerevision value${rep.home}/revision.log/param nameurl valuejdbc:mysql://221.221.221.7:3306/jackrabbit/param namedriver valuecom.mysql.cj.jdbc.Driver/param nameuser valuejcr_user/param namepassword value!QAZ2wsx/param nameschema valuemysql/param namedatabaseType valuemysql/param namejanitorEnabled valuetrue/param namejanitorSleep value86400/param namejanitorFirstRunHourOfDay value3/
/Journaltomcat 替换pentaho-server/tomcat/lib下面的mysql驱动包 修改配置文件pentaho-server/tomcat/webapps/pentaho/META-INF/context.xml ?xml version1.0 encodingUTF-8?
Context path/pentaho docbasewebapps/pentaho/Resource validationQueryselect 1 urljdbc:mysql://xxxx:3306/hibernate driverClassNamecom.mysql.cj.jdbc.Driver password!QAZ2wsx usernamehibuser initialSize0 maxActive20 maxIdle10 maxWait10000 factoryorg.apache.commons.dbcp.BasicDataSourceFactory typejavax.sql.DataSource authContainer namejdbc/Hibernate/Resource validationQueryselect 1 urljdbc:mysql://xxxx:3306/quartz driverClassNamecom.mysql.cj.jdbc.Driver password!QAZ2wsx usernamepentaho_user testOnBorrowtrue initialSize0 maxActive20 maxIdle10 maxWait10000 factoryorg.apache.commons.dbcp.BasicDataSourceFactory typejavax.sql.DataSource authContainer namejdbc/Quartz/Resource namejdbc/jackrabbit authContainer typejavax.sql.DataSource factoryorg.apache.commons.dbcp.BasicDataSourceFactory maxActive20 minIdle0 maxIdle5 initialSize0 maxWait10000 usernamejcr_user password!QAZ2wsx driverClassNamecom.mysql.cj.jdbc.Driver urljdbc:mysql://xxxx:3306/jackrabbit validationQueryselect 1/
/Context注释pentaho-server/tomcat/webapps/pentaho/WEB-INF/web.xml相关配置 搜索关键字BEGIN HSQLDB DATABASES 搜索关键字BEGIN HSQLDB STARTER
pentaho-server/pentaho-solutions/system/systemListeners.xml 启动服务
./start-pentaho.sh登录控制台 客户端连接
本地直接解压上面下载的客户端安装包启动spoon 问题排查
遇到的问题就两种一是端口冲突二是文件配置不对少个标签呀、密码不对呀根据日志直接排查即可 查看日志:pentaho-server/tomcat/logs
禁用H2
启动报H2端口冲突错即使你已经指定了 MySQL 数据库作为 Pentaho BI Server 的数据源H2 数据库服务器仍然会尝试启动。这是因为 H2 数据库用于存储 Pentaho 系统的一些内部信息和配置。 要解决这个问题你可以选择以下两种方法之一
更改 H2 数据库服务器的端口 如上一个回答所述你可以修改 GettingStartedDB-spring.xml 文件中的端口号将 H2 数据库服务器绑定到一个新的、未被使用的端口。禁用 H2 数据库服务器 如果你确定不需要使用 H2 数据库服务器可以将其完全禁用。为此请在 GettingStartedDB-spring.xml 文件中找到 h2Server bean 的定义并将 bean 标签的 init-methodstart 属性更改为 init-method。这将阻止 Spring 在初始化上下文时启动 H2 数据库服务器。
请注意在进行任何更改后都需要重新启动 Pentaho BI Server 以使更改生效。
constructor-argarray value-typejava.lang.Stringvalue-tcp/valuevalue-tcpAllowOthers/valuevalue-tcpPort/valuevalue9792/value/array
/constructor-arg其它 只是为了个人了解直接本地解压启动即可无需任何配置 服务端 客户端 具体使用正在研究中…