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

2.1.4 Connecting using Individual Parameters

In addition to specifying connection parameters using a URI type 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 first 5 parameters match the elements used in the URI type string format described at Section 2.1.2, “Connecting using a URI String”.

By default, MySQL Shell assumes that connections require a password. The password is requested at the login prompt. 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 explicitly specify that no password is provided and the password prompt is not required. To do this, either specify the --no-password option, or specify the --password= option with an empty value.

For consistency, the following aliases are supported for some parameters:

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.

    For example to override user from the URI:

    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.

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