Available on crate feature
database only.Expand description
Database connection string builders.
Builds connection URLs from environment variables with standard prefixes.
Each builder reads {PREFIX}_HOST, {PREFIX}_PORT, {PREFIX}_USER,
{PREFIX}_PASSWORD, {PREFIX}_DB and constructs the appropriate URL.
Password fields use crate::SensitiveString for compile-time safe redaction.
§Supported Databases
| Database | Default Port | URL Format |
|---|---|---|
| PostgreSQL | 5432 | postgresql://user:pass@host:port/db |
| ClickHouse | 8123 | http://user:pass@host:port/db (HTTP) |
| ClickHouse Native | 9000 | tcp://user:pass@host:port/db |
| Redis/Valkey | 6379 | redis://user:pass@host:port/db |
| MongoDB | 27017 | mongodb://user:pass@host:port/db |
§Usage
use hyperi_rustlib::database::{PostgresUrl, DatabaseUrl};
// From explicit values
let url = PostgresUrl::new("db.prod.internal", 5432, "app_user", "secret", "dfe_db");
assert!(url.to_url().starts_with("postgresql://"));
// From env vars (reads POSTGRES_HOST, POSTGRES_PORT, etc.)
let url = PostgresUrl::from_env("POSTGRES");§Config Cascade
database:
postgres:
host: db.prod.internal
port: 5432
user: app_user
password: secret
db: dfe_dbStructs§
- Click
House Url - ClickHouse HTTP connection URL builder (port 8123).
- DbConnection
- Common database connection fields.
- Mongo
Url - MongoDB connection URL builder.
- Postgres
Url - PostgreSQL connection URL builder.
- Redis
Url - Redis/Valkey connection URL builder.
Traits§
- Database
Url - Trait for database connection URL builders.