Hi,

On Dec 24, 2007 1:35 AM, Martin Goldman <[EMAIL PROTECTED]> wrote:
> Hi folks,
>
> I have two MySQL servers running in a master-slave configuration, and I want
> to set up a process for backing up our application's data in which backups
> are sent to a server at another location. Ideally, I'd like to do a full
> backup once a week, and then incremental backups every 6 hours. It seems to
> make the most sense for this to happen on the slave. I was thinking it could
> work something like this:
>
> Weekly job:
> - Stop slave
> - Flush and delete binlogs on slave
> - Use mysqldump to generate full backup on slave
> - Create a directory on the remote server for this week's backups, and copy
> the full backup file over to it
> - Start slave
>
> Every-6-hours job:
> - Stop slave
> - Flush binlogs on slave
> - Copy over any newly created binlog files from the slave to the current
> weekly directory on the remote server
> - Start slave
>
> Then, if I needed to restore the backup, I'd:
> - Copy the weekly directory from the remote server to the MySQL server
> - Play back the full backup on the MySQL server
> - Play back the binlogs on the MySQL server
>
> I'm just curious as to whether the more experienced folks here think this is
> a logical approach, and if so, whether there are any caveats in particular
> to watch out for. (I've already stumbled upon the fact that I need to set
> log-slave-updates in order to have binlogs on my slave to be incrementally
> backed up.) Any thoughts? If this is a totally boneheaded approach, how
> would you recommend going about it?

No, this is a reasonable and common way to do it.  The major gotcha,
in my opinion, is that your slave can have different data from the
master.  I wrote mk-table-checksum to verify slaves are in sync with
the master. (http://maatkit.sourceforge.net).

You may also want to delay a slave by an hour or two, to make
point-in-time recovery easier.  There's another tool in Maatkit for
that.

Have you looked into ZRM from Zmanda?  It's really nice.

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

Reply via email to