Question

I am trying to execute foo.sql using the source command in MySQL.

When I type the command, the file is sourced accordingly:

mysql> source ~/foo.sql

Now, there are a lot of statements being executed in this file and I would like to review the success/failure of these statements. Is there a way I can pipe the results of the statements to a log file, foo.txt?

I am thinking something along the lines of:

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

However, typing this command appears to assume that everything following the source statement is one file name; so it is trying to source a file named '~/foo.sql into outfile ~/foo.txt', which obviously doesn't exist.

Was it helpful?

Solution

From within your MySQL client, type

tee session.out

From that point on, all the I/O of in your current client session is written to the file 'session.out'

OTHER TIPS

You could do it from the shell prompt:

$ mysql -p dbname < foo.sql > foo.txt

Use the command line:

mysql -p dbname < ~/foo.sql > ~/foo.txt
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top