Graph Management
ADD GRAPH <name> ON CONNECTOR <connector>
[GRAPH <remote_name>]
[MAPPING <mapping_name>]
[READ ONLY];
CREATE GRAPH <name>
[{ <gql_schema_body> } | ANY]
ON CONNECTOR <connector>;
UNADD GRAPH [IF EXISTS] <name>;
DROP GRAPH [IF EXISTS] <name>;
ALTER GRAPH <name> SET READ ONLY;
ALTER GRAPH <name> SET READ WRITE;
ALTER GRAPH <name> SET CONNECTOR <connector>;
ALTER GRAPH <name> SET GRAPH <remote_name>;
ALTER GRAPH <name> SET MAPPING <mapping_name>;
ALTER GRAPH <name> REMOVE MAPPING;Query Syntax
-- Single graph
USE <graph> <query>;
-- Focused multi-graph
USE <graph1> <simpleQuery>
USE <graph2> <simpleQuery>
RETURN ...;
-- Composite
USE <graph1> <query>
UNION | UNION ALL | INTERSECT | INTERSECT ALL | EXCEPT | EXCEPT ALL
USE <graph2> <query>;Configuration Reference
MemGQL is configured entirely via environment variables.
General
| Variable | Default | Description |
|---|---|---|
CONNECTOR_TYPE | memgraph | Connector to use (see table below) |
CONNECTION_TYPE | (none) | Alias for CONNECTOR_TYPE |
BOLT_LISTEN_ADDR | 127.0.0.1:7688 | Address the Bolt server binds to |
Enterprise License
| Variable | Default | Description |
|---|---|---|
MEMGQL_ENTERPRISE_LICENSE | (none) | License key (mglk-...) |
MEMGQL_ORGANIZATION_NAME | (none) | Organization name to verify against license |
When set, the license is decoded and verified against the organization name at startup. A valid enterprise license removes connector and connection limits. Without a license, community mode allows up to 4 connectors and 4 simultaneous connections.
Connector Types
| Connector | Translation | Backend |
|---|---|---|
memgraph | None (passthrough) | Memgraph |
memgraph-gql | GQL -> Cypher | Memgraph |
neo4j | None (passthrough) | Neo4j |
neo4j-gql | GQL -> Cypher | Neo4j |
postgres | GQL -> SQL | PostgreSQL |
mysql | GQL -> SQL | MySQL 8.0+ |
duckdb | GQL -> SQL | DuckDB (embedded) |
clickhouse | GQL -> SQL | ClickHouse |
iceberg | GQL -> SQL | Iceberg via Trino |
pinot | GQL -> SQL | Apache Pinot |
multi | Per-connector | Multiple backends simultaneously |
Memgraph (memgraph, memgraph-gql)
| Variable | Default | Description |
|---|---|---|
MEMGRAPH_URI | 127.0.0.1:7687 | Connection URI |
MEMGRAPH_USER | user | Username |
MEMGRAPH_PASS | pass | Password |
MEMGRAPH_DB | memgraph | Database name |
Neo4j (neo4j, neo4j-gql)
| Variable | Default | Description |
|---|---|---|
NEO4J_URI | 127.0.0.1:7687 | Connection URI |
NEO4J_USER | neo4j | Username |
NEO4J_PASS | password | Password |
NEO4J_DB | neo4j | Database name |
PostgreSQL (postgres)
| Variable | Default | Description |
|---|---|---|
POSTGRES_URL | host=localhost user=postgres password=postgres dbname=postgres | libpq connection string |
MAPPING_FILE | (none, uses built-in default) | Path to JSON mapping file |
MySQL (mysql)
| Variable | Default | Description |
|---|---|---|
MYSQL_URL | mysql://root:mysql@localhost:3306/test | MySQL connection URL (mysql://user:pass@host:port/database) |
MAPPING_FILE | (none, uses built-in default) | Path to JSON mapping file |
DuckDB (duckdb)
| Variable | Default | Description |
|---|---|---|
DUCKDB_PATH | :memory: | Path to DuckDB file |
MAPPING_FILE | (none, uses built-in default) | Path to JSON mapping file |
ClickHouse (clickhouse)
| Variable | Default | Description |
|---|---|---|
CLICKHOUSE_URL | http://localhost:8123 | ClickHouse HTTP API URL |
CLICKHOUSE_USER | default | ClickHouse user |
CLICKHOUSE_PASS | (none) | ClickHouse password |
CLICKHOUSE_DB | default | ClickHouse database |
MAPPING_FILE | (none, uses built-in default) | Path to JSON mapping file |
Apache Pinot (pinot)
| Variable | Default | Description |
|---|---|---|
PINOT_URL | http://localhost:8099 | Pinot broker base URL or full SQL endpoint |
PINOT_QUERY_OPTIONS | useMultistageEngine=true | Query options sent with broker SQL requests |
MAPPING_FILE | (none, uses built-in default) | Path to JSON mapping file |
Iceberg (iceberg)
| Variable | Default | Description |
|---|---|---|
TRINO_URL | http://localhost:8080 | Trino REST API URL |
TRINO_USER | trino | Trino user |
TRINO_CATALOG | iceberg | Trino catalog |
TRINO_SCHEMA | default | Trino schema |
MAPPING_FILE | (none, uses built-in default) | Path to JSON mapping file |