Program options specified on the command line follow these rules:
Options are given after the command name.
An option argument begins with one dash or two dashes,
depending on whether it is a short form or long form of the
option name. Many options have both short and long forms. For
example, -? and --help are
the short and long forms of the option that instructs a MySQL
program to display its help message.
Option names are case sensitive. -v and
-V are both legal and have different
meanings. (They are the corresponding short forms of the
--verbose and --version
options.)
Some options take a value following the option name. For
example, -h localhost or
--host=localhost indicate the
MySQL server host to a client program. The option value tells
the program the name of the host where the MySQL server is
running.
For a long option that takes a value, separate the option name
and the value by an = sign. For a short
option that takes a value, the option value can immediately
follow the option letter, or there can be a space between:
-hlocalhost and -h localhost
are equivalent. An exception to this rule is the option for
specifying your MySQL password. This option can be given in
long form as
--password=
or as pass_val--password. In the
latter case (with no password value given), the program
prompts you for the password. The password option also may be
given in short form as
-p or as
pass_val-p. However, for the short form, if the
password value is given, it must follow the option letter with
no intervening space. The reason for this
is that if a space follows the option letter, the program has
no way to tell whether a following argument is supposed to be
the password value or some other kind of argument.
Consequently, the following two commands have two completely
different meanings:
shell>mysql -ptestshell>mysql -p test
The first command instructs mysql to use a
password value of test, but specifies no
default database. The second instructs
mysql to prompt for the password value and
to use test as the default database.
Within option names, dash (-) and
underscore (_) may be used interchangeably.
For example,
--skip-grant-tables and
--skip_grant_tables
are equivalent. (However, the leading dashes cannot be given
as underscores.)
For options that take a numeric value, the value can be given
with a suffix of K, M,
or G (either uppercase or lowercase) to
indicate a multiplier of 1024,
10242 or
10243. For example, the following
command tells mysqladmin to ping the server
1024 times, sleeping 10 seconds between each ping:
shell> mysqladmin --count=1K --sleep=10 ping
Option values that contain spaces must be quoted when given on the
command line. For example, the
--execute (or -e)
option can be used with mysql to pass SQL
statements to the server. When this option is used,
mysql executes the statements in the option
value and exits. The statements must be enclosed by quotation
marks. For example, you can use the following command to obtain a
list of user accounts:
shell>mysql -u root -p --execute="SELECT User, Host FROM mysql.user"Enter password:******+------+-----------+ | User | Host | +------+-----------+ | | gigan | | root | gigan | | | localhost | | jon | localhost | | root | localhost | +------+-----------+ shell>
The long form (--execute) is
followed by an equals sign (=).
If you wish to use quoted values within a statement, you will either need to escape the inner quotation marks, or use a different type of quotation marks within the statement from those used to quote the statement itself. The capabilities of your command processor dictate your choices for whether you can use single or double quotation marks and the syntax for escaping quote characters. For example, if your command processor supports quoting with single or double quotation marks, you can use double quotation marks around the statement, and single quotation marks for any quoted values within the statement.
Multiple SQL statements may be passed in the option value on the command line, separated by semicolons:
shell>mysql -u root -p -e "SELECT VERSION();SELECT NOW()"Enter password:******+------------------+ | VERSION() | +------------------+ | 5.5.46-debug-log | +------------------+ +---------------------+ | NOW() | +---------------------+ | 2015-11-05 20:02:49 | +---------------------+