MySQL Shell can connect to MySQL Server using both the X Protocol and the classic MySQL protocol. The address of the MySQL Server which you want to connect to can be specified using individual parameters, such as user, hostname and port, or using a Uniform Resource Identifier (URI) type string. The following sections describe these connection methods. See Section 4.2.2, “Connecting to the MySQL Server” for more background information.
You can configure the MySQL server instance that MySQL Shell is connected to in the following ways:
When you start MySQL Shell using the command parameters. See Section 4.5.7, “mysqlsh — The MySQL Shell”.
When MySQL Shell is running using the
\connectcommand. See Section 18.4.1, “MySQL Shell Commands”.
Regardless of the method you choose to connect it is important
to understand how passwords are handled by MySQL Shell. By
default connections are assumed to require a password. The
password is requested at the login prompt. To specify a
password-less account use the
--password option and do not
specify a password, or use a
: after the
user in a URI type string and do not specify
If you do not specify parameters for a connection the following defaults are used:
user defaults to the current system user name
host defaults to localhost
port defaults to the X Plugin port 33060 when using an X Protocol session, and port 3306 when using a Classic session
MySQL Shell connections using X Protocol always use TCP, using Unix sockets is not supported. MySQL Shell connections using MySQL Protocol default to using Unix sockets when the following conditions are met:
portis not specified
hostis not specified or it is equal to
socketis provided with a path to a socket
--host is specified but it is
localhost, a TCP connection is established.
In this case, if
--port is not
specified the default value of 3306 is used. If the conditions are
met for a socket connection but
--socket is not specified then the
default socket is used, see Section 4.2.2, “Connecting to the MySQL Server”.