Struct mysql_async::Opts [−][src]
pub struct Opts { /* fields omitted */ }
Expand description
Mysql connection options.
Build one with OptsBuilder
.
Implementations
Address of mysql server (defaults to 127.0.0.1
). Hostnames should also work.
User (defaults to None
).
Connection URL
Can be defined in connection URL. E.g.
let opts = Opts::from_url("mysql://user@localhost/database_name")?; assert_eq!(opts.user(), Some("user"));
Password (defaults to None
).
Connection URL
Can be defined in connection URL. E.g.
let opts = Opts::from_url("mysql://user:pass%20word@localhost/database_name")?; assert_eq!(opts.pass(), Some("pass word"));
Database name (defaults to None
).
Connection URL
Database name can be defined in connection URL. E.g.
let opts = Opts::from_url("mysql://localhost/database_name")?; assert_eq!(opts.db_name(), Some("database_name"));
TCP keep alive timeout in milliseconds (defaults to None
).
Connection URL
You can use tcp_keepalive
URL parameter to set this value (in milliseconds). E.g.
let opts = Opts::from_url("mysql://localhost/db?tcp_keepalive=10000")?; assert_eq!(opts.tcp_keepalive(), Some(10_000));
Set the TCP_NODELAY
option for the mysql connection (defaults to true
).
Setting this option to false re-enables Nagle’s algorithm, which can cause unusually high latency (~40ms) but may increase maximum throughput. See #132.
Connection URL
You can use tcp_nodelay
URL parameter to set this value. E.g.
let opts = Opts::from_url("mysql://localhost/db?tcp_nodelay=false")?; assert_eq!(opts.tcp_nodelay(), false);
Handler for local infile requests (defaults to None
).
Connection pool options (defaults to Default::default
).
Pool will close connection if time since last IO exceeds this number of seconds
(defaults to wait_timeout
. None
to reset to default).
Connection URL
You can use conn_ttl
URL parameter to set this value (in seconds). E.g.
let opts = Opts::from_url("mysql://localhost/db?conn_ttl=360")?; assert_eq!(opts.conn_ttl(), Some(Duration::from_secs(360)));
Number of prepared statements cached on the client side (per connection). Defaults to
DEFAULT_STMT_CACHE_SIZE
.
Call with None
to reset to default. Set to 0
to disable statement cache.
Caveats
If statement cache is disabled (stmt_cache_size
is 0
), then you must close statements
manually.
Connection URL
You can use stmt_cache_size
URL parameter to set this value. E.g.
let opts = Opts::from_url("mysql://localhost/db?stmt_cache_size=128")?; assert_eq!(opts.stmt_cache_size(), 128);
Driver will require SSL connection if this opts isn’t None
(default to None
).
Prefer socket connection (defaults to true
temporary false
on Windows platform).
Will reconnect via socket (or named pipe on Windows) after TCP connection to 127.0.0.1
if true
.
Will fall back to TCP on error. Use socket
option to enforce socket connection.
Note
Library will query the @@socket
server variable to get socket address,
and this address may be incorrect in some cases (e.g. docker).
Connection URL
You can use prefer_socket
URL parameter to set this value. E.g.
let opts = Opts::from_url("mysql://localhost/db?prefer_socket=false")?; assert_eq!(opts.prefer_socket(), false);
Path to unix socket (or named pipe on Windows) (defaults to None
).
Connection URL
You can use socket
URL parameter to set this value. E.g.
let opts = Opts::from_url("mysql://localhost/db?socket=%2Fpath%2Fto%2Fsocket")?; assert_eq!(opts.socket(), Some("/path/to/socket"));
If not None
, then client will ask for compression if server supports it
(defaults to None
).
Connection URL
You can use compression
URL parameter to set this value:
fast
- for compression level 1;best
- for compression level 9;on
,true
- for default compression level;0
, …,9
.
Note that compression level defined here will affect only outgoing packets.
Client side max_allowed_packet
value (defaults to None
).
By default Conn
will query this value from the server. One can avoid this step
by explicitly specifying it. Server side default is 4MB.
Available in connection URL via max_allowed_packet
parameter.
Client side wait_timeout
value (defaults to None
).
By default Conn
will query this value from the server. One can avoid this step
by explicitly specifying it. Server side default is 28800.
Available in connection URL via wait_timeout
parameter.
Disables mysql_old_password
plugin (defaults to true
).
Available via secure_auth
connection url parameter.
Trait Implementations
Performs the conversion.
Auto Trait Implementations
impl !RefUnwindSafe for Opts
impl !UnwindSafe for Opts
Blanket Implementations
Mutably borrows from an owned value. Read more
fn fmt_binary(self) -> FmtBinary<Self> where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self> where
Self: Binary,
Causes self
to use its Binary
implementation when Debug
-formatted.
fn fmt_display(self) -> FmtDisplay<Self> where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self> where
Self: Display,
Causes self
to use its Display
implementation when
Debug
-formatted. Read more
fn fmt_lower_exp(self) -> FmtLowerExp<Self> where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self> where
Self: LowerExp,
Causes self
to use its LowerExp
implementation when
Debug
-formatted. Read more
fn fmt_lower_hex(self) -> FmtLowerHex<Self> where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self> where
Self: LowerHex,
Causes self
to use its LowerHex
implementation when
Debug
-formatted. Read more
Causes self
to use its Octal
implementation when Debug
-formatted.
fn fmt_pointer(self) -> FmtPointer<Self> where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self> where
Self: Pointer,
Causes self
to use its Pointer
implementation when
Debug
-formatted. Read more
fn fmt_upper_exp(self) -> FmtUpperExp<Self> where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self> where
Self: UpperExp,
Causes self
to use its UpperExp
implementation when
Debug
-formatted. Read more
fn fmt_upper_hex(self) -> FmtUpperHex<Self> where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self> where
Self: UpperHex,
Causes self
to use its UpperHex
implementation when
Debug
-formatted. Read more
pub fn lift_into(self) -> U
pub fn lift_into(self) -> U
Performs the indexed conversion.
impl<T> Pipe for T where
T: ?Sized,
impl<T> Pipe for T where
T: ?Sized,
Pipes by value. This is generally the method you want to use. Read more
Borrows self
and passes that borrow into the pipe function. Read more
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R where
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R where
R: 'a,
Mutably borrows self
and passes that borrow into the pipe function. Read more
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R where
Self: Borrow<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R where
Self: Borrow<B>,
B: 'a + ?Sized,
R: 'a,
Borrows self
, then passes self.borrow()
into the pipe function. Read more
fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> R where
Self: BorrowMut<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> R where
Self: BorrowMut<B>,
B: 'a + ?Sized,
R: 'a,
Mutably borrows self
, then passes self.borrow_mut()
into the pipe
function. Read more
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R where
Self: AsRef<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R where
Self: AsRef<U>,
U: 'a + ?Sized,
R: 'a,
Borrows self
, then passes self.as_ref()
into the pipe function.
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R where
Self: AsMut<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R where
Self: AsMut<U>,
U: 'a + ?Sized,
R: 'a,
Mutably borrows self
, then passes self.as_mut()
into the pipe
function. Read more
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R where
Self: Deref<Target = T>,
T: 'a + ?Sized,
R: 'a,
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R where
Self: Deref<Target = T>,
T: 'a + ?Sized,
R: 'a,
Borrows self
, then passes self.deref()
into the pipe function.
type Output = T
type Output = T
Should always be Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self where
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self where
Self: Borrow<B>,
B: ?Sized,
Immutable access to the Borrow<B>
of a value. Read more
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self where
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self where
Self: BorrowMut<B>,
B: ?Sized,
Mutable access to the BorrowMut<B>
of a value. Read more
Immutable access to the AsRef<R>
view of a value. Read more
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self where
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self where
Self: AsMut<R>,
R: ?Sized,
Mutable access to the AsMut<R>
view of a value. Read more
Immutable access to the Deref::Target
of a value. Read more
Mutable access to the Deref::Target
of a value. Read more
Calls .tap()
only in debug builds, and is erased in release builds.
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
Calls .tap_mut()
only in debug builds, and is erased in release
builds. Read more
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self where
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self where
Self: Borrow<B>,
B: ?Sized,
Calls .tap_borrow()
only in debug builds, and is erased in release
builds. Read more
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self where
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self where
Self: BorrowMut<B>,
B: ?Sized,
Calls .tap_borrow_mut()
only in debug builds, and is erased in release
builds. Read more
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self where
Self: AsRef<R>,
R: ?Sized,
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self where
Self: AsRef<R>,
R: ?Sized,
Calls .tap_ref()
only in debug builds, and is erased in release
builds. Read more
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self where
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self where
Self: AsMut<R>,
R: ?Sized,
Calls .tap_ref_mut()
only in debug builds, and is erased in release
builds. Read more
pub fn vzip(self) -> V