### 4.5.1 mysql——MySQL 命令行客户端

[4.5.1.1 mysql客户端选项](mysql-command-options.html)
[4.5.1.2 mysql客户端命令](mysql-commands.html)
[4.5.1.3 mysql客户端日志](mysql-logging.html)
[4.5.1.4 mysql客户端服务器端帮助](mysql-server-side-help.html)
[4.5.1.5 从文本文件执行 SQL 语句](mysql-batch-commands.html)
[4.5.1.6 mysql客户端提示](mysql-tips.html)

[](<>)[](<>)[](<>)[](<>)[](<>)[](<>)

[**mysql**](mysql.html)是一个具有输入行编辑功能的简单 SQL shell。它支持交互式和非交互式使用。交互使用时，查询结果以 ASCII 表格式显示。当以非交互方式使用时（例如，作为过滤器），结果以制表符分隔的格式显示。可以使用命令选项更改输出格式。

如果由于大型结果集的内存不足而遇到问题，请使用[`- 快的`](mysql-command-options.html#option_mysql_quick)选项。这迫使[**mysql**](mysql.html)一次从服务器检索结果，而不是检索整个结果集并在显示之前将其缓冲在内存中。这是通过使用返回结果集来完成的[`mysql_use_result()`](https://dev.mysql.com/doc/c-api/8.0/en/mysql-use-result.html)客户端/服务器库中的 C API 函数，而不是[`mysql_store_result()`](https://dev.mysql.com/doc/c-api/8.0/en/mysql-store-result.html).

笔记

或者，MySQL Shell 提供对 X DevAPI 的访问。有关详细信息，请参阅[MySQL 外壳 8.0](https://dev.mysql.com/doc/mysql-shell/8.0/en/).

使用[**mysql**](mysql.html)很容易。从命令解释器的提示符中调用它，如下所示：

```
mysql db_name
```

要么：

```
mysql --user=user_name --password db_name
```

在这种情况下，您需要输入密码以响应提示[**mysql**](mysql.html)显示：

```
Enter password: your_password
```

然后键入一条 SQL 语句，以`;`,`\g`， 要么`\G`并按 Enter。

打字**控制+C**如果有，则中断当前语句，否则取消任何部分输入行。

[](<>)[](<>)

您可以像这样在脚本文件（批处理文件）中执行 SQL 语句：

```
mysql db_name < script.sql > output.tab
```

在 Unix 上，[**mysql**](mysql.html)客户端将交互执行的语句记录到历史文件中。看[第 4.5.1.3 节，“mysql 客户端日志记录”](mysql-logging.html).
