Expand description
Static diesel r2d2 connection pooling with env configuration
Composible connection urls are provided by environment variables using env-url using the DATABASE prefix:
| ENV | |
| -----------------------:|:--------------------------:|
| DATABASE_URL | set connection url |
| DATABASE_HOST | set url host |
| DATABASE_PORT | set url port |
| DATABASE_PATH | set selected database |
| DATABASE_USERINFO | set connnection userinfo |MAX_DB_CONNECTIONS env sets max connections within connection pool
The dotenv feature flag enables automatic at-most-once dotenv loading via dotenvy. This is necessary because pool statics are initialized pre-main via static_init.
use diesel_connection::{pg::get_connection, PoolError};
#[actix_rt::main]
async fn main() -> Result<(), PoolError> {
let conn = get_connection()?;
}Re-exports§
pub use pg::PooledConnection;postgresand non-mysqland non-sqlite
Modules§
- mysql
mysql - Types for MySQL connections.
- pg
postgres - Types for Postgres connections.
- sqlite
sqlite - Types for SQLite connections.
Structs§
- Connection
Pool postgresand non-mysqland non-sqlite - Static connection pool type
Traits§
- Connection
Info - Pool
Context - Trait for defining static connection pool
Functions§
- get_
connection postgresand non-mysqland non-sqlite - Get postgress connection from pool. Use
DATABASE_URLenv variable to set connection url