Bacula-users

[Bacula-users] mysqldump and Full,Diff,Incr

2011-05-17 06:35:55
Subject: [Bacula-users] mysqldump and Full,Diff,Incr
From: "Robert Kromoser" <Robert.Kromoser AT kinamu DOT com>
To: <bacula-users AT lists.sourceforge DOT net>
Date: Tue, 17 May 2011 12:31:15 +0200

Hi everybody.

 

I have one question where I can’t found any information in the bacula documentation.

 

That is the configuration:

 

# #-------------------------------------------------------

# # Kinamu Client Schdule for Backup

# #-------------------------------------------------------

 

Schedule {

        Name = SugarCRM_Backup_CCRM0004

        Run = Level=Full mon-sat at 10:00

        Run = Level=Differential mon-sat at 11:00

        Run = Level=Incremental mon-sat at 12:00

        Run = Level=Incremental mon-sat at 13:00

}

 

Storage {

        Name = SugarCRM_CCRM0004

        Address = CBCK0001

        Device = SugarCRM_CCRM0004

        Media Type = SugarCRM_CCRM0004

        Password = "geheim"

}

 

# #-------------------------------------------------------

# # Kinamu Volume Pool Definition

# #-------------------------------------------------------

 

Pool {

        Name = SugarCRM_CCRM0004

        Use Volume _Once_ = Yes

        Pool Type = Backup

        LabelFormat = "Disk-Vol-CCRM0004-"

        Autoprune = Yes

        Volume Retention = 2 hours

        # Daily Incr Backup 6 the week 4 the month = 24

        # Weekly Diff Backup = 5

        # Monthly Backup 6

        # Maximum Volume = 24+5+6=35

        Maximum Volumes = 35

        Maximum Volume Jobs = 1

        Storage = "SugarCRM_CCRM0004"

        Next Pool = "Tape"

        Recycle = Yes

}

 

# #-------------------------------------------------------

# # Kinamu Fileset for all Backups

# #-------------------------------------------------------

 

FileSet {

        Name = SugarCRM_Fileset_CCRM0004

        Include {

                Options {

                        compression = GZIP

                        signature = MD5

                }

                File = /var/www/html

                File = /var/log

                File = /opt

                File = /etc

                Plugin = "bpipe:/tmp/ccrm0004_mysql.sql:mysqldump -f --opt --quote-names --databases mysql:mysql"

                Plugin = "bpipe:/tmp/ccrm0004_sugarcrm520.sql:mysqldump -f --opt --quote-names --databases sugarcrm:mysql"

                Plugin = "bpipe:/tmp/ccrm0004_test.sql:mysqldump -f --opt --quote-names --databases test:mysql"

 

        }

        Exclude {

                File = /usr

                File = /tmp

                File = /proc

                File = /sys

                File = /.journal

                File = /.fsck

        }

}

 

# #-------------------------------------------------------

# # Kinamu Full Backup

# #-------------------------------------------------------

 

JobDefs {

  Name = "CCRM0004_JobDefs"

  Type = Backup

  Level = Full

  Client = CCRM0004-fd

  FileSet = "SugarCRM_Fileset_CCRM0004"

  Schedule = "SugarCRM_Backup_CCRM0004"

  Messages = Standard

  Pool = "SugarCRM_CCRM0004"

  Priority = 10

  Write Bootstrap = "/tmp/backup/sugarcrm/CCRM0004-fd/backup/%c_Jobid_%i.bsr"

}

 

Job {

  Name = "CCRM0004_01_Backup"

  JobDefs = "CCRM0004_JobDefs"

  # Client Run After Job = "/usr/local/kinamu/bacula/bacula_full_run.sh"

}

 

And now my questions:

 

As you can see in the schedule will be startet the job one time as Full, one time as Diff and two times as incr backup.

My understanding is OK for the filesystem backups like /var/www/html or /var/log.

But what is about the mysqldump of my mysql databases.

Mysqldump usually dumps the whole database out to an *.sql file.

Thus the 4 Backup runs, see above, should have the same sizes (count of bytes) of the *.sql files from the mysqldump and

different sizes (count of bytes) from the filesystem based backups like /var/www/html.

 

Now my mysql databases on the client CCRM0004 show the following:

 

[root@CCRM0004 mysql]# du -h --max-depth=1 ./sugarcrm520 ./mysql ./test

411M    ./sugarcrm520

688K    ./mysql

4.0K    ./test

[root@CCRM0004 mysql]#

 

Then I did the mysqldump commands on the command line to get the real file sizes:

 

[root@CCRM0004 mysql]# cd /tmp

[root@CCRM0004 tmp]# mysqldump -f --opt --quote-names --databases mysql >mysql.sql

[root@CCRM0004 tmp]# mysqldump -f --opt --quote-names --databases sugarcrm520 >sugarcrm520.sql

[root@CCRM0004 tmp]# mysqldump -f --opt --quote-names --databases test >test.sql

[root@CCRM0004 tmp]#

[root@CCRM0004 tmp]# ls -l *.sql

-rw-rw---- 1 root root    294271 May 17 12:16 mysql.sql

-rw-rw---- 1 root root 372155141 May 17 12:18 sugarcrm520.sql

-rw-rw---- 1 root root      1348 May 17 12:19 test.sql

[root@CCRM0004 tmp]# du -h ./*.sql

292K    ./mysql.sql

356M    ./sugarcrm520.sql

4.0K    ./test.sql

[root@CCRM0004 tmp]#

 

 

Question 1:

 

The mysqldump backups via the bpipe plugin should be every backup run a full backup of the mysql database regardless which level will be used from the schedule, isn’t it?

 

Question 2:

 

When I do a list files jobid=<jobid>

Then I get the following:

 

*list files jobid=13

Automatically selected Catalog: MyCatalog

Using Catalog "MyCatalog"

+----------------------------+

| Filename                   |

+----------------------------+

| /var/log/cron              |

| /tmp/ccrmtest_mysql.sql    |

| /tmp/ccrmtest_sugarcrm.sql |

| /tmp/ccrmtest_test.sql     |

+----------------------------+

+-------+--------------------+---------------------+------+-------+----------+----------+-----------+

| JobId | Name               | StartTime           | Type | Level | JobFiles | JobBytes | JobStatus |

+-------+--------------------+---------------------+------+-------+----------+----------+-----------+

|    13 | CCRMTEST_01_Backup | 2011-05-17 12:00:01 | B    | I     |        4 |  384,772 | T         |

+-------+--------------------+---------------------+------+-------+----------+----------+-----------+

 

Where can I see which file sizes the pseudo filenames for the mysql databases has after the backup via plugin bpibe?

 

Br Robert

 

 

 

 

------------------------------------------------------------------------------
Achieve unprecedented app performance and reliability
What every C/C++ and Fortran developer should know.
Learn how Intel has extended the reach of its next-generation tools
to help boost performance applications - inlcuding clusters.
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
Bacula-users mailing list
Bacula-users AT lists.sourceforge DOT net
https://lists.sourceforge.net/lists/listinfo/bacula-users
<Prev in Thread] Current Thread [Next in Thread>