Databases and Valkey
PostgreSQL, MariaDB, and ClickHouse
zenifra create project --name app-db --plan db-basic --payment-mode monthly --config @examples/postgresql-project.json
zenifra create project --name app-db --plan db-basic --payment-mode monthly --config @examples/mariadb-project.json
zenifra create project --name events --plan analytics-starter --payment-mode hourly --config @examples/clickhouse-project.jsonThe wizard and examples do not ask for a username, password, or database name.
Valkey
Check the plans first: zenifra plans --type database (Key‑Value), --type cache, and --type queue. The plan identifies the profile: db-* for Key‑Value, cache-* for Cache, and queue-* for Queues. Without version, the CLI uses the catalog's default version.
Key‑Value is persistent and uses storage:
{
"type_project": "valkey",
"profile": "key_value",
"storage": {
"persistent": true,
"capacity": 5
}
}zenifra create project --name sessions --plan db-basic --payment-mode monthly --config @key-value.jsonCache is disposable and sends no storage:
{
"type_project": "valkey",
"profile": "cache"
}zenifra create project --name product-cache --plan cache-basic --payment-mode monthly --config @cache.jsonQueues use persistent storage for Streams and consumer groups:
{
"type_project": "valkey",
"profile": "queue",
"storage": {
"persistent": true,
"capacity": 5
}
}zenifra create project --name email-workers --plan queue-basic --payment-mode hourly --config @queue.jsonDo not provide an image, runtime, port, instance count, or IP rules. Valkey is publicly reachable over IPv4 and protected by TLS and authentication; see the Valkey overview, the Key‑Value Database, Cache, Queues, and the REST reference.
To operate the service (the same database command works for PostgreSQL, MariaDB, and ClickHouse):
zenifra projects --type key-value
zenifra database status --project <project-id>
zenifra database connection --project <project-id>
zenifra database credentials rotate --project <project-id> --wait
zenifra database credentials status --project <project-id> --operation <operation-id>The connection you query is masked; the full credential appears only at creation or after a completed rotation. To save it to a private file without printing it:
zenifra database credentials rotate --project <project-id> --wait --connection-file /private/path/connection.txtLast updated on