MySQL 8.3 Release Notes
客户端 mysql 通常以交互方式使用,如下所示:
mysql db_name
然而,也可以将 SQL 语句放入文件中,然后告诉 mysql 从该文件读取输入。为此,创建一个文本文件 text_file
,其中包含要执行的语句。然后,以以下方式调用 mysql:
mysql db_name < text_file
如果您在文件的第一条语句中放置一个 USE
语句,那么在命令行中不需要指定数据库名称:db_name
mysql < text_file
如果您已经运行了 mysql,可以使用 source
命令或 \.
命令来执行 SQL 脚本文件:
mysql> source file_name
mysql> \. file_name
有时,您可能想让脚本向用户显示进度信息。为此,您可以插入类似以下的语句:
SELECT '<info_to_display>' AS ' ';
该语句将输出 <info_to_display>
。
您也可以使用 mysql 的 --verbose
选项,该选项将在结果之前显示每个语句。
mysql 忽略输入文件开头的 Unicode 字节顺序标记(BOM)字符。以前,它会读取这些字符并将其发送到服务器,导致语法错误。BOM 的存在不会使 mysql 更改其默认字符集。要做到这一点,请使用选项,如 --default-character-set=utf8mb4
。
有关批处理模式的更多信息,请参阅 第 5.5 节,“使用 mysql 在批处理模式”。