export POSTGRES_DB=mesh
export POSTGRES_USER=meshdbuser
export POSTGRES_PASSWORD=admin
There is an enterprise feature available to use a wider variety of Relational Databases as storage for Gentics Mesh. The used Relational Database has to be provided and is not included or managed by Gentics Mesh.
As of now the following RDBMSs are supported as a premium feature:
MSSQL 2019+
Oracle 19+
PostgreSQL 14.4+
In order to have Gentics Mesh working with a particular database, a database connector module is required. The connector for MariaDB is freely distributed at our Github Releases, and its instructions may be found at the administration guide. The connectors for Oracle, Microsoft SQL Server, PostgreSQL require a valid Gentics License. Please contact Gentics Sales to get one, and you wiil be provided a database connector JAR file.
Download postgresql-X.Y.Z.jar from an official PostgreSQL website , place it at the server into the folder, reachable by Gentics Mesh. Place the database connector JAR file in this folder as well.
Define the database and Mesh user. This example uses environment variables.
export POSTGRES_DB=mesh
export POSTGRES_USER=meshdbuser
export POSTGRES_PASSWORD=admin
Create the dedicated schema.
CREATE SCHEMA mesh;
storageOptions:
retryLimit: 10
retryDelayMillis: 2000
databaseAddress: "<postgres_database_host>:5432"
databaseName: "mesh"
databaseConnectorClasspath: <path/to/downloaded/driver/and/connector>
connectionUsername: "meshdbuser"
connectionPassword: "admin"
showSql: false
formatSql: false
hikariOptions:
autocommit: false
connectionTimeout: 10000
idleTimeout: 600000
maxLifetime: 1800000
minimumIdleConnection: 10
maxPoolSize: 10
poolName: "MeshHikariCP"
registerMBeans: false
transactionIsolationLevel: null
leakDetectionThreshold: 0
synchronizeWrites: false
synchronizeWritesTimeout: 6000
Gentics provides the pre-build Docker images, which already contain the database connector, so only the JDBC driver is to be provided.
Please note that an access to the Gentics' commercial repository is required to obtain the image. Its docker-compose
configuration may look like as follows:
mesh:
image: docker.gentics.com/gentics/mesh-postgres
volumes:
- mesh-uploads:/uploads
- /whatever/path/you/chose/for/the/postgresql-X.Y.Z.jar:/mesh/database/postgres.jar
ports:
- '8080:8080'
environment:
MESH_DATABASE_ADDRESS: <host:port of a PostgreSQL. For instance, if address/name is `postgres`, the content here will be `postgres:5432`>
MESH_JDBC_DATABASE_NAME: mesh
MESH_JDBC_CONNECTION_USERNAME: "meshdbuser"
MESH_JDBC_CONNECTION_PASSWORD: "admin"
The Enterprise Edition image of Gentics Mesh, capable of Gentics License management feature, is available inder the name docker.gentics.com/gentics/mesh-enterprise-postgres
.
This example uses inbuilt "SA" user.
Download sqljdbc_X.Y.Z.W_enu.zip from Official SQL Server JDBC driver webpage , unpack mssql-jdbc-X.Y.Z.jre11.jar at the server into the folder, reachable by Gentics Mesh. Place the database connector JAR file in this folder as well.
Define the "SA" user password. This example uses environment variables.
export SA_PASSWORD=admin
Create the dedicated database:
CREATE DATABASE mesh;
Alter the isolation level
ALTER DATABASE mesh SET READ_COMMITTED_SNAPSHOT ON;
storageOptions:
retryLimit: 10
retryDelayMillis: 2000
databaseAddress: "<sql_server_host>:1433"
databaseName: "mesh"
databaseConnectorClasspath: <path/to/downloaded/driver/and/connector>
connectionUsername: "SA"
connectionPassword: "admin"
showSql: false
formatSql: false
hikariOptions:
autocommit: false
connectionTimeout: 10000
idleTimeout: 600000
maxLifetime: 1800000
minimumIdleConnection: 10
maxPoolSize: 10
poolName: "MeshHikariCP"
registerMBeans: false
transactionIsolationLevel: null
leakDetectionThreshold: 0
synchronizeWrites: false
synchronizeWritesTimeout: 6000
Gentics provides the pre-build Docker images, which already contain the database connector, so only the JDBC driver is to be provided.
Please note that an access to the Gentics' commercial repository is required to obtain the image. Its docker-compose
configuration may look like as follows:
mesh:
image: docker.gentics.com/gentics/mesh-mssql
volumes:
- mesh-uploads:/uploads
- /whatever/path/you/chose/for/the/mssql-jdbc-X.Y.Z.jre11.jar:/mesh/database/mssql.jar
ports:
- '8080:8080'
environment:
MESH_DATABASE_ADDRESS: <host:port of a SQL Server. For instance, if its address/name is `sqlserver`, the content here will be `sqlserver:1433`>
MESH_JDBC_DATABASE_NAME: mesh
MESH_JDBC_CONNECTION_USERNAME: "SA"
MESH_JDBC_CONNECTION_PASSWORD: "admin"
The Enterprise Edition image of Gentics Mesh, capable of Gentics License management feature, is available inder the name docker.gentics.com/gentics/mesh-enterprise-mssql
.
Download ojdbc11.jar from the official Oracle JDBC driver webpage, place it at the server into the folder, reachable by Mesh. Place the database connector JAR file in this folder as well.
Define the database and Mesh user. This example uses environment variables.
export ORACLE_DATABASE=mesh
Create the dedicated database:
CREATE DATABASE mesh;
Alter the number of simultaneously open cursors
ALTER SYSTEM SET OPEN_CURSORS=4444 SID='*' SCOPE=BOTH;
Create the dedicated user
CREATE USER meshdbuser IDENTIFIED BY "admin";
GRANT ALL PRIVILEGES TO meshdbuser;
storageOptions:
retryLimit: 10
retryDelayMillis: 2000
databaseAddress: "<oracle_host>:1521"
connectionUrlExtraParams: ""
databaseName: "mesh"
databaseConnectorClasspath: <path/to/downloaded/driver/and/connector>
connectionUsername: "meshdbuser"
connectionPassword: "admin"
showSql: false
formatSql: false
hikariOptions:
autocommit: false
connectionTimeout: 10000
idleTimeout: 600000
maxLifetime: 1800000
minimumIdleConnection: 10
maxPoolSize: 10
poolName: "MeshHikariCP"
registerMBeans: false
transactionIsolationLevel: null
leakDetectionThreshold: 0
synchronizeWrites: false
synchronizeWritesTimeout: 6000
Gentics provides the pre-build Docker images, which already contain the database connector, so only the JDBC driver is to be provided.
Please note that an access to the Gentics' commercial repository is required to obtain the image. Its docker-compose
configuration may look like as follows:
mesh:
image: docker.gentics.com/gentics/mesh-oracle
volumes:
- mesh-uploads:/uploads
- /whatever/path/you/chose/for/the/ojdbc11.jar:/mesh/database/oracle.jar
ports:
- '8080:8080'
environment:
MESH_DATABASE_ADDRESS: <host:port of an Oracle DB. For instance, if its address/name is `oracle`, the content here will be `oracle:1521`>
MESH_JDBC_DATABASE_NAME: mesh
MESH_JDBC_CONNECTION_USERNAME: "meshdbuser"
MESH_JDBC_CONNECTION_PASSWORD: "admin"
The Enterprise Edition image of Gentics Mesh, capable of Gentics License management feature, is available inder the name docker.gentics.com/gentics/mesh-enterprise-oracle
.