4.5.1 mysql — MySQL 命令行客户端

mysql 时带有输入行编辑功能的简单 SQL shell. 它支持交互式和非交互式使用. 当用于交互式时, 查询结果以 ASCII表格式显示. 当非交互式使用时(例如, 作为过滤器), 结果以制表符分隔的格式显示. 可以使用命令选项来更改输出格式.

如果因为获取大的结果集导致内存不足从而程序出现问题, 可使用 --quick 选项. 会强制 mysql 一行一行地从服务器检索结果, 而不是检索整个结果, 然后在显示之前一直在内存中缓存. 这是通过使用 client/server 类库中的 mysql_use_result() C API 函数返回结果集, 而不是 mysql_store_result().

注意

另外, MySQL Shell 提供了对 X DevAPI 的访问. 有关详情, 参阅 MySQL Shell 8.0 (MySQL 8.0 部分).

使用 mysql 非常容易. 从命令解释器的提示符调用它, 如下所示:

  1. shell> mysql db_name

或者:

  1. shell> mysql --user=user_name --password db_name
  2. Enter password: your_password

然后输入一个SQL语句, 以 ;, \g, 或者 \G 结束, 然后按 Enter 键.

如果存在语句, 键入 Control+C 会中断当前语句, 否则取消任何部分的输入行.

你可以在脚本文件(批处理文件)中执行 SQL 语句, 如下所示:

  1. shell> mysql db_name < script.sql > output.tab

在 Unix 上, mysql 客户端记录可交互式的执行语句到一个历史文件中. 参阅 Section 4.5.1.3, “mysql 客户端日志”.