### 4.2.1 Invoking MySQL Programs

 To invoke a MySQL program from the command line (that is, from your shell or command prompt), enter the program name followed by any options or other arguments needed to instruct the program what you want it to do. The following commands show some sample program invocations. `$>` represents the prompt for your command interpreter; it is not part of what you type. The particular prompt you see depends on your command interpreter. Typical prompts are `$` for **sh**, **ksh**, or **bash**, `%` for **csh** or **tcsh**, and `C:\>` for the Windows **command.com** or **cmd.exe** command interpreters.

```
$> mysql --user=root test
$> mysqladmin extended-status variables
$> mysqlshow --help
$> mysqldump -u root personnel
```

 Arguments that begin with a single or double dash (`-`, `--`) specify program options. Options typically indicate the type of connection a program should make to the server or affect its operational mode. Option syntax is described in [Section 4.2.2, “Specifying Program Options”](program-options.html).

 Nonoption arguments (arguments with no leading dash) provide additional information to the program. For example, the [**mysql**](mysql.html) program interprets the first nonoption argument as a database name, so the command `mysql --user=root test` indicates that you want to use the `test` database.

 Later sections that describe individual programs indicate which options a program supports and describe the meaning of any additional nonoption arguments.

 Some options are common to a number of programs. The most frequently used of these are the [`--host`](connection-options.html#option_general_host) (or `-h`), [`--user`](connection-options.html#option_general_user) (or `-u`), and [`--password`](connection-options.html#option_general_password) (or `-p`) options that specify connection parameters. They indicate the host where the MySQL server is running, and the user name and password of your MySQL account. All MySQL client programs understand these options; they enable you to specify which server to connect to and the account to use on that server. Other connection options are [`--port`](connection-options.html#option_general_port) (or `-P`) to specify a TCP/IP port number and [`--socket`](connection-options.html#option_general_socket) (or `-S`) to specify a Unix socket file on Unix (or named-pipe name on Windows). For more information on options that specify connection options, see [Section 4.2.4, “Connecting to the MySQL Server Using Command Options”](connecting.html).

[]()[]()

 You may find it necessary to invoke MySQL programs using the path name to the `bin` directory in which they are installed. This is likely to be the case if you get a “program not found” error whenever you attempt to run a MySQL program from any directory other than the `bin` directory. To make it more convenient to use MySQL, you can add the path name of the `bin` directory to your `PATH` environment variable setting. That enables you to run a program by typing only its name, not its entire path name. For example, if [**mysql**](mysql.html) is installed in `/usr/local/mysql/bin`, you can run the program by invoking it as [**mysql**](mysql.html), and it is not necessary to invoke it as **/usr/local/mysql/bin/mysql**.

 Consult the documentation for your command interpreter for instructions on setting your `PATH` variable. The syntax for setting environment variables is interpreter-specific. (Some information is given in [Section 4.2.9, “Setting Environment Variables”](setting-environment-variables.html).) After modifying your `PATH` setting, open a new console window on Windows or log in again on Unix so that the setting goes into effect.

