Moqui 3.0多实例模式下如何配置PostgreSQL数据库
Moqui 3.0 Docker多实例切换为PostgreSQL的配置步骤
1. 更新Docker Compose配置
替换原有MySQL服务定义为PostgreSQL服务,示例配置如下:
services: postgres: image: postgres:15-alpine environment: POSTGRES_DB: moqui POSTGRES_USER: moqui POSTGRES_PASSWORD: moqui volumes: - postgres_data:/var/lib/postgresql/data ports: - "5432:5432" restart: unless-stopped # 更新volumes部分 volumes: postgres_data:
2. 修改Moqui数据库连接配置
编辑runtime/conf/MoquiConf.xml,找到<entity-facade>节点下的数据源配置,替换为PostgreSQL相关内容:
<datasource group-name="transactional" database-conf-name="postgres"> <inline-jdbc jdbc-url="jdbc:postgresql://postgres:5432/moqui" username="moqui" password="moqui"/> </datasource>
确认配置文件中已包含PostgreSQL的数据库类型定义(Moqui 3.0默认自带):
<database-conf name="postgres" database-type="PostgreSQL" sql-dialect="org.hibernate.dialect.PostgreSQLDialect" jdbc-driver="org.postgresql.Driver"/>
3. 初始化数据库结构与数据
启动PostgreSQL服务后,进入Moqui容器执行初始化命令:
./gradlew load
该命令会自动创建PostgreSQL中的表结构,并加载Moqui的初始业务数据。
注意事项
- 推荐使用PostgreSQL 12及以上版本,确保与Moqui 3.0的兼容性
- 保持
docker-compose.yml中的数据库用户名、密码、库名与Moqui配置文件完全一致 - 首次启动前确保
postgres_data卷无旧数据,避免初始化冲突
内容的提问来源于stack exchange,提问作者Rong Nguyen
相关产品推荐
相关产品推荐

