#使用mysql的批处理模式 Using mysql in Batch Mode
可以将要运行的mysql命令,写在一个文件中,然后使用批处理命令运行它。
##在shell中使用mysql的批处理命令
shell> mysql < batch-file
实例,如在shell中执行
shell> bin/mysql -uroot -p123456 -D test < /data/create_tables.sql
如果批处理命令中即使有一些命令出错,也仍然继续执行后面的命令,可以使用–force强制执行
如果需要定期执行一些查询,可以把它写成一个脚本定期执行它。
如果执行的过程中有较多的输出,可以使用more来分屏输出
shell> mysql < batch-file | more
也可以把结果输出到一个文件
shell> mysql < batch-file > mysql.out
如果在执行批命令中,直接在终端输出,输出结果可能是如下格式
+---------+
| species |
+---------+
| bird |
| cat |
| dog |
| hamster |
| snake |
+---------+
但是输出到文件的格式,默认是如下格式
species
bird
cat
dog
hamster
snake
可以使用mysql -t 输出同终端的格式,mysql -v输出执行的语句。
实例
shell> bin/mysql -uroot -p123456 -D hello -t -v < /test.sql >/output.txt
##在mysql客户端中使用批处理命令
mysql连接进入mysql服务器后,使用如下命令
mysql> source filename;
mysql> \. filename
实例,以下语句不要分号
mysql> source /test.sql
mysql> \. /test.sql
http://dev.mysql.com/doc/refman/5.7/en/batch-mode.html