如何配置processmaker(3.0.7)以使用postgresql(9.3)?

时间:2016-05-26 09:41:59

标签: mysql postgresql processmaker

Processmaker默认使用mysql,但我不想使用mysql,因为我的团队在postgresql上。我已经更改了它接受postgres连接的db.php文件但是它没有填充数据库。在我的SQL中它有138个表。我很期待它会检测新数据库并添加必要的表。但到目前为止还没有发生。

如果我将所有表从mysql复制到pgsql那么它会起作用吗?

这是我得到的错误

RuntimeException:
 [wrapped: Could not execute query [Native Error: ERROR:  relation "configuration" does not exist
LINE 1: SELECT COUNT(CONFIGURATION.CFG_UID) FROM CONFIGURATION WHERE...
                                                 ^] [User Info: SELECT COUNT(CONFIGURATION.CFG_UID) FROM CONFIGURATION WHERE CONFIGURATION.CFG_UID='getStarted' AND CONFIGURATION.OBJ_UID='' AND CONFIGURATION.CFG_VALUE='1' AND CONFIGURATION.PRO_UID='' AND CONFIGURATION.USR_UID='' AND CONFIGURATION.APP_UID='']]
At BasePeer::doSelect() 
in C:\Users\admin\AppData\Roaming\ProcessMaker-3_0_1_7_community-1\processmaker\workflow\engine\classes\model\om\BaseConfigurationPeer.php line 293
At BaseConfigurationPeer::doSelectRS() 
in C:\Users\admin\AppData\Roaming\ProcessMaker-3_0_1_7_community-1\processmaker\workflow\engine\classes\model\om\BaseConfigurationPeer.php line 223
At BaseConfigurationPeer::doCount() 
in C:\Users\admin\AppData\Roaming\ProcessMaker-3_0_1_7_community-1\processmaker\workflow\engine\methods\login\login.php line 455
At require_once() in C:\Users\admin\AppData\Roaming\ProcessMaker-3_0_1_7_community-1\processmaker\workflow\public_html\sysGeneric.php line 2027
At include() in C:\Users\admin\AppData\Roaming\ProcessMaker-3_0_1_7_community-1\processmaker\workflow\public_html\app.php line 61

1 个答案:

答案 0 :(得分:1)

不幸的是,ProcessMaker只能在MySQL数据库引擎下运行核心主数据库。可以将ProcessMaker设置为连接到其他引擎类型的外部数据库源,例如Postgres,但这仅用于从外部数据库连接检索和推送数据。

原因是在MySQL源代码中编写了大量自定义SQL。

我们已经尝试让它在MSSQL上运行,但是,我们最终得出结论,要让ProcessMaker在MSSQL上运行需要花费太多精力,因此我们决定只使用MySQL。