activiti5.22切换数据库至postgresql

第一步,创建数据库:

使用psql -U postgres登录后执行下列命令

postgres=# create role activiti login password 'mima' superuser;
CREATE ROLE
postgres=# create database activiti with owner = activiti encoding='UTF8' tablespace=pg_default lc_collate='zh_CN.UTF-8' connection limit=-1 template template0;
CREATE DATABASE
postgres=# grant connect on database activiti to activiti;
GRANT
postgres=# create schema activiti;
CREATE SCHEMA
postgres=# alter database activiti set search_path to activiti;
ALTER DATABASE
postgres=# alter role activiti set search_path=activiti;
ALTER ROLE
postgres=# grant all privileges on schema activiti to activiti;
GRANT

 

换activiti登录授权(上面用postgres授权居然无效)

activiti=# create schema activiti;
CREATE SCHEMA
activiti=# grant usage on schema activiti to activiti;
GRANT
activiti=# grant create on schema activiti to activiti;
GRANT

(简单一点的授权语句也可以是grant all privileges on schema activiti to activiti;)

 

第二步,创建表

使用复制sql到命令行执行的方法貌似有问题(复制的sql居然有长度限制),所以使用命令

在Linux的CLI界面执行psql -U activiti </路径/activiti-5.22.0/database/create/activiti.postgres.create.engine.sql

同理导入其他两个文件

 

第三步,授权远程访问

首先centos7 的firewall打开

网上的教程说要授权访问是要修改pg_hba.conf文件,可是用locate是找不到这个文件的,只能找到pg_hba.conf.sample文件,但这是个例子不会生效.

那个配置文件在/var/lib/pgsql/9.6/data/pg_hba.conf 注意那个9.6是我的版本号,另外要在CLI界面下用su来访问

修改host 后面address栏为samenet method为trust

然后访问同目录下(这点和网上的说法不一致)修改postgresql.conf文件,将数据库服务器的监听模式修改为监听所有主机发出的连接请求。
定位到listen_addresses=’localhost’。PostgreSQL安装完成后,默认是只接受来在本机localhost的连接请 求。
然后调用service postgresql-9.6 restart重启生效

如果没有完成上面的远程授权会报错Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections

打开DBeaver用activiti登录activiti

第四步配置activiti.cfg.xml,

注意对于Junit测试时要修改test目录下的该文件

另外还有一个坑是注释掉下面的那行被注释的,否则每次都是新的数据库,就没有历史数据了

 

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
		xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
		xsi:schemaLocation="http://www.springframework.org/schema/beans
				http://www.springframework.org/schema/beans/spring-beans.xsd">

	<bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneInMemProcessEngineConfiguration">
	<!-- <property name="databaseSchemaUpdate" value="true"/>  -->	
    <property name="jdbcUrl" value="jdbc:postgresql://192.168.60.128:5432/activiti" />
    <property name="jdbcDriver" value="org.postgresql.Driver" />
    <property name="jdbcUsername" value="activiti" />
    <property name="jdbcPassword" value="mima" />

    <property name="databaseSchemaUpdate" value="true" />

    <property name="jobExecutorActivate" value="false" />
    <property name="asyncExecutorEnabled" value="true" />
    <property name="asyncExecutorActivate" value="false" />

    <property name="mailServerHost" value="mail.my-corp.com" />
    <property name="mailServerPort" value="5025" />
	</bean>
</beans>


运行一下下面的测试

 

 

@Test
	public void testUser(){
		IdentityService identityService=activitiRule.getIdentityService();
		User user=identityService.newUser("Qbit");
		user.setFirstName("Gogle");
		user.setLastName("Sinker");
		user.setEmail("123@123.com");
	//	identityService.saveUser(user);
		User userInDb=identityService.createUserQuery().userId("Qbit").singleResult();
		assertNotNull(userInDb);
		System.out.println(userInDb);
	}


第一次不要注释那行注释的,第二次注释掉运行一次,这就说明数据已经到数据库了,可以看下act_id_user,里面是有数据的.

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Activiti 5.22 和 Flowable 都是 BPMN(Business Process Model and Notation)工作流引擎,但是它们的数据模型有所不同。因此,将 Activiti 5.22 的数据迁移到 Flowable 时需要进行一些适配和转换。 以下是迁移 Activiti 5.22 数据至 Flowable 的一般步骤: 1. 创建一个新的 Flowable 数据库。 2. 将 Activiti 5.22 的数据导出为 XML 文件。 3. 使用 Flowable 的数据迁移工具将 Activiti 5.22 的 XML 文件转换为 Flowable 的数据格式。 4. 将 Flowable 的数据导入新的数据库中。 具体的步骤如下: 1. 创建一个新的 Flowable 数据库 在安装 Flowable 后,需要创建一个新的数据库来存储 Flowable 的数据。可以使用任何关系型数据库,例如 MySQL、Oracle、SQL Server 等等。在创建数据库之前,请确保已经安装了相应的数据库驱动程序。 2. 将 Activiti 5.22 的数据导出为 XML 文件 使用 Activiti 提供的数据备份工具将 Activiti 5.22 的数据导出为 XML 文件。可以使用以下命令行工具来完成此操作: ``` java -jar activiti-data-export.jar -f activiti-export.zip -ds jdbc:mysql://localhost:3306/activiti?useUnicode=true&characterEncoding=UTF-8 -db mysql -u root -p password ``` 这里的参数说明: - -f:要导出的 XML 文件的名称。 - -ds:要备份的 Activiti 数据库的 JDBC URL。 - -db:要备份的数据库类型(mysql、oracle、mssql)。 - -u:要备份的数据库的用户名。 - -p:要备份的数据库的密码。 执行命令后,将在当前目录下生成一个名为 activiti-export.zip 的文件。 3. 使用 Flowable 的数据迁移工具将 Activiti 5.22 的 XML 文件转换为 Flowable 的数据格式 Flowable 提供了一个命令行工具,用于将 Activiti 5.22 的数据转换为 Flowable 的数据格式。 使用以下命令将 Activiti 的数据转换为 Flowable 的数据格式: ``` java -jar flowable-data-migration.jar activiti-export.zip flowable-export.zip ``` 这里的参数说明: - activiti-export.zip:Activiti 5.22 数据的备份文件。 - flowable-export.zip:转换后的 Flowable 数据的导出文件。 执行命令后,将在当前目录下生成一个名为 flowable-export.zip 的文件。 4. 将 Flowable 的数据导入新的数据库中 使用 Flowable 提供的数据导入工具将 Flowable 的数据导入到新的数据库中。 使用以下命令将 Flowable 数据导入新的数据库中: ``` java -jar flowable-data-import.jar flowable-export.zip jdbc:mysql://localhost:3306/flowable?useUnicode=true&characterEncoding=UTF-8 root password ``` 这里的参数说明: - flowable-export.zip:要导入的 Flowable 数据的文件。 - jdbc:mysql://localhost:3306/flowable?useUnicode=true&characterEncoding=UTF-8:Flowable 数据库的 JDBC URL。 - root:Flowable 数据库的用户名。 - password:Flowable 数据库的密码。 执行命令后,将会将 Flowable 数据导入到新的数据库中。 需要注意的是,这个过程需要谨慎操作,最好在测试环境中进行,以确保数据迁移的成功和正确性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值