Struct sqlx_core::mysql::MySqlConnectOptions [−][src]
pub struct MySqlConnectOptions { /* fields omitted */ }
Expand description
Options and flags which can be used to configure a MySQL connection.
A value of MySqlConnectOptions
can be parsed from a connection URI,
as described by MySQL.
The generic format of the connection URL:
mysql://[host][/database][?properties]
Properties
Parameter | Default | Description |
---|---|---|
ssl-mode | PREFERRED | Determines whether or with what priority a secure SSL TCP/IP connection will be negotiated. See MySqlSslMode . |
ssl-ca | None | Sets the name of a file containing a list of trusted SSL Certificate Authorities. |
statement-cache-capacity | 100 | The maximum number of prepared statements stored in the cache. Set to 0 to disable. |
socket | None | Path to the unix domain socket, which will be used instead of TCP if set. |
Example
// URI connection string
let conn = MySqlConnection::connect("mysql://root:password@localhost/db").await?;
// Manually-constructed options
let conn = MySqlConnectOptions::new()
.host("localhost")
.username("root")
.password("password")
.database("db")
.connect().await?;
Implementations
Sets the name of the host to connect to.
The default behavior when the host is not specified, is to connect to localhost.
Sets the port to connect to at the server host.
The default port for MySQL is 3306
.
Pass a path to a Unix socket. This changes the connection stream from TCP to UDS.
By default set to None
.
Sets whether or with what priority a secure SSL TCP/IP connection will be negotiated with the server.
By default, the SSL mode is Preferred
, and the client will
first attempt an SSL connection but fallback to a non-SSL connection on failure.
Example
let options = MySqlConnectOptions::new()
.ssl_mode(MySqlSslMode::Required);
Sets the name of a file containing a list of trusted SSL Certificate Authorities.
Example
let options = MySqlConnectOptions::new()
.ssl_mode(MySqlSslMode::VerifyCa)
.ssl_ca("path/to/ca.crt");
Sets PEM encoded list of trusted SSL Certificate Authorities.
Example
let options = MySqlConnectOptions::new()
.ssl_mode(MySqlSslMode::VerifyCa)
.ssl_ca_from_pem(vec![]);
Sets the capacity of the connection’s statement cache in a number of stored distinct statements. Caching is handled using LRU, meaning when the amount of queries hits the defined limit, the oldest statement will get dropped.
The default cache capacity is 100 statements.
Sets the character set for the connection.
The default character set is utf8mb4
. This is supported from MySQL 5.5.3.
If you need to connect to an older version, we recommend you to change this to utf8
.
Trait Implementations
type Connection = MySqlConnection
fn connect(&self) -> BoxFuture<'_, Result<Self::Connection, Error>> where
Self::Connection: Sized,
fn connect(&self) -> BoxFuture<'_, Result<Self::Connection, Error>> where
Self::Connection: Sized,
Establish a new database connection with the options specified by self
.
Log executed statements with the specified level
Log executed statements with a duration above the specified duration
at the specified level
. Read more
Entirely disables statement logging (both slow and regular).
Performs the conversion.
Auto Trait Implementations
impl RefUnwindSafe for MySqlConnectOptions
impl Send for MySqlConnectOptions
impl Sync for MySqlConnectOptions
impl Unpin for MySqlConnectOptions
impl UnwindSafe for MySqlConnectOptions
Blanket Implementations
Mutably borrows from an owned value. Read more