pub struct PoolConfig {
pub host: String,
pub port: u16,
pub user: String,
pub database: String,
pub password: Option<String>,
pub max_connections: usize,
pub min_connections: usize,
pub idle_timeout: Duration,
pub acquire_timeout: Duration,
pub connect_timeout: Duration,
pub max_lifetime: Option<Duration>,
pub test_on_acquire: bool,
}Expand description
Connection pool configuration.
Fields§
§host: StringHost address
port: u16Port number
user: StringUsername
database: StringDatabase name
password: Option<String>Password (optional for trust mode)
max_connections: usizeMaximum number of connections
min_connections: usizeMinimum number of idle connections to maintain
idle_timeout: DurationMaximum time a connection can be idle before being closed
acquire_timeout: DurationMaximum time to wait for a connection from the pool
connect_timeout: DurationMaximum time to wait when establishing a new connection
max_lifetime: Option<Duration>Maximum lifetime of a connection before recycling (None = no limit)
test_on_acquire: boolWhether to validate connections with a ping before returning
Implementations§
Source§impl PoolConfig
impl PoolConfig
Sourcepub fn new(host: &str, port: u16, user: &str, database: &str) -> Self
pub fn new(host: &str, port: u16, user: &str, database: &str) -> Self
Create a new pool configuration with sensible defaults.
Sourcepub fn max_connections(self, max: usize) -> Self
pub fn max_connections(self, max: usize) -> Self
Set maximum connections.
Sourcepub fn min_connections(self, min: usize) -> Self
pub fn min_connections(self, min: usize) -> Self
Set minimum idle connections.
Sourcepub fn idle_timeout(self, timeout: Duration) -> Self
pub fn idle_timeout(self, timeout: Duration) -> Self
Set idle timeout (connections idle longer than this are closed).
Sourcepub fn acquire_timeout(self, timeout: Duration) -> Self
pub fn acquire_timeout(self, timeout: Duration) -> Self
Set acquire timeout (max wait time when getting a connection).
Sourcepub fn connect_timeout(self, timeout: Duration) -> Self
pub fn connect_timeout(self, timeout: Duration) -> Self
Set connect timeout (max time to establish new connection).
Sourcepub fn max_lifetime(self, lifetime: Duration) -> Self
pub fn max_lifetime(self, lifetime: Duration) -> Self
Set maximum lifetime of a connection before recycling. After this duration, connection will be closed and recreated.
Sourcepub fn test_on_acquire(self, enabled: bool) -> Self
pub fn test_on_acquire(self, enabled: bool) -> Self
Enable connection validation on acquire. When enabled, connections are tested with a ping before being returned.
Trait Implementations§
Source§impl Clone for PoolConfig
impl Clone for PoolConfig
Source§fn clone(&self) -> PoolConfig
fn clone(&self) -> PoolConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more