Documentation Home
MySQL Shell 8.0
Related Documentation Download this Manual
PDF (US Ltr) - 0.5Mb
PDF (A4) - 0.5Mb
HTML Download (TGZ) - 105.8Kb
HTML Download (Zip) - 117.3Kb

MySQL Shell 8.0  /  ...  /  Connecting using Individual Parameters

4.3.1 Connecting using Individual Parameters

In addition to specifying connection parameters using a connection string, it is also possible to define the connection data when starting MySQL Shell using separate command parameters for each value. For a full reference of MySQL Shell command options see Section A.1, “mysqlsh — The MySQL Shell”.

Use the following connection related parameters:

The command options behave similarly to the options used with the mysql client described at Connecting to the MySQL Server Using Command Options.

Use the following command options to control whether and how a password is provided for the connection:

  • --password=password (-ppassword) with a value supplies a password (up to 128 characters) to be used for the connection. With the long form --password=, you must use an equal sign and not a space between the option and its value. With the short form -p, there must be no space between the option and its value. If a space is used in either case, the value is not interpreted as a password and might be interpreted as another connection parameter.

    Specifying a password on the command line should be considered insecure. See End-User Guidelines for Password Security. You can use an option file to avoid giving the password on the command line.

  • --password with no value and no equal sign, or -p without a value, requests the password prompt.

  • --no-password, or --password= with an empty value, specifies that the user is connecting without a password. When connecting to the server, if the user has a password-less account, which is insecure and not recommended, or if socket peer-credential authentication is in use (for Unix socket connections), you must use one of these methods to explicitly specify that no password is provided and the password prompt is not required.

To enable compression for the session, specify the --compress (-C) parameter. This parameter enables compression of all information sent between the client and the server if possible. See Connection Compression Control. Compression is available for MySQL Shell connections using classic MySQL protocol only. In a URI-like connection string, the equivalent parameter is compression. The MySQL Shell \status command shows whether or not compression is enabled for the session.

When parameters are specified in multiple ways, for example using both the --uri option and specifying individual parameters such as --user, the following rules apply:

  • If an argument is specified more than once the value of the last appearance is used.

  • If both individual connection arguments and --uri are specified, the value of --uri is taken as the base and the values of the individual arguments override the specific component from the base URI-like string.

    For example to override user from the URI-like string:

    shell> mysqlsh --uri user@localhost:33065 --user otheruser

The following examples show how to use command parameters to specify connections. Attempt to establish an X Protocol connection with a specified user at port 33065:

shell> mysqlsh --mysqlx -u user -h localhost -P 33065

Attempt to establish a classic MySQL protocol connection with a specified user, with compression enabled:

shell> mysqlsh --mysql -u user -h localhost -C