> mysqldump --no-data --all-databases
> ____________________________________________________________
> <SNIP>
> Eamon Daly
Yeap Eamon, as mentioned MyRun is not the only utility on earth with the functionality.
The difference between mysqldump and MyRun is that while MyRun includes all the mysqldump
functionality, MyRun can take ANY source script.
Let's make an example: mysqldump is great for backuping up complete database(s) with or
without data. This is ofcourse nice, except when you have 50M records in a table,
because then you get a resulting script which is huge. So essentially they both do
something like this to generate the insert record sql for data backup purposes:
select * from accounts; -- as an example
but because you can customize the source sql script for MyRun, you can go like:
select * from accounts where AccountDate>YEAR(CURDATE()); --
i.e. limit the inserts you going to get to that which is really important. Also because
it takes a source script, you can essentially limit the tables in a specific database to
those with the important stuff in which you want to backup:
---
use this-db;
select * from accounts; -- Yes, important
select * from orders; -- Yes, important
-- select * from sessions; -- No skip this table completely
select * from logs limit 0; -- Data not important, only capture schema
..
-- Maybe do a little maintenance while we are busy?
update accountpasswords set AccPassword=encrypt(AccPassword) where
AccOpenDate>CURDATE();
select * from accountpasswords;
..
use that-db;
select * from ...etc etc
---
The logs table is a good example of such tables, it contains temporary kind of data and
potentially a huge amount,ex. millions of recs. This will unnecessarily bloat the
destination script file, so we limit it. Honestly, your backups is only limited by your
imagination.
Kind Regards
SciBit MySQL Team
http://www.scibit.com