At 10:33 AM +1000 9/18/03, Daniel Kasak wrote:
Paul DuBois wrote:

If you have problems reloading the table due to the order
in which the InnoDB tables appear in the dump files, add

SET FOREIGN_KEY_CHECKS = 0;

to the beginning of the file before reloading it.

Our backups are quick large - over 500 MB. Opening the file and adding the above line at the top takes a lot of CPU time and memory - and when I'm restoring, I don't have a lot of time...
Is there an easier way to get it there - can I 'cat' to the beginning of a file, or should I make my backup scripts cat the output of mysqldump to the end of a file with 'set foreign_key_check=0;' at the top? Maybe we could have a switch for mysqldump that does this for us?

You can use SOURCE:


shell> mysql [plus any other options you need here]
mysql> SET FOREIGN_KEY_CHECK = 0;
mysql> SOURCE your_dump_file;

Or a cat trick:

shell> echo "SET FOREIGN_KEY_CHECK = 0;" | cat - your_dump_file | mysql

mysqldump will add the SET statement to its output in MySQL 4.1.1,
so this messing around won't be necessary.


-- Paul DuBois, Senior Technical Writer Madison, Wisconsin, USA MySQL AB, www.mysql.com

Are you MySQL certified? http://www.mysql.com/certification/


-- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]



Reply via email to