27

我正在尝试使用 MySQL 中的 source 命令执行 foo.sql。

当我键入命令时,相应地获取文件:

mysql> source ~/foo.sql

现在,这个文件中有很多语句正在执行,我想回顾一下这些语句的成功/失败。有没有办法可以将语句的结果通过管道传输到日志文件 foo.txt?

我在想一些事情:

mysql> source ~/foo.sql into outfile ~/foo.txt

但是,键入此命令似乎假定源语句后面的所有内容都是一个文件名;所以它试图将一个名为 '~/foo.sql 的文件导入到 outfile ~/foo.txt' 中,这显然不存在。

4

3 回答 3

46

在您的 MySQL 客户端中,键入

tee session.out

从那时起,当前客户端会话中的所有 I/O 都将写入文件“session.out”

于 2011-05-09T20:05:16.250 回答
3

您可以从 shell 提示符执行此操作:

$ mysql -p dbname < foo.sql > foo.txt
于 2010-11-10T16:15:16.313 回答
1

使用命令行:

mysql -p dbname < ~/foo.sql > ~/foo.txt
于 2010-11-10T16:15:50.943 回答