Solved

MySQL backup script automation on Windows server

Posted on 2013-02-03
4
458 Views
Last Modified: 2014-02-02
Hi all

I've done a lot of looking, but can't find something that covers all bases of what I want.

I'd like a backup script that I can schedule to run nightly to backup my server's MySQL databases.

It's Windows Server 2008 R2, IIS7.5, MySQL v5.1, PHP v5.4.

There is about 8 databases, but I'd like them backed up to individual files with the date in the file name.  eg.  database1-20130204.sql

I've read a little about mysqldump but have no idea how to make it dump the databases to individual files at the same time (i.e one script rather than a different one for each database for each day of the week).

I'd also like the dump to be on a different HDD...  eg. D:\MySQL-Backups\dumps.

New databases are added or some deleted somewhat frequently, so I'd prefer not to have to adjust the backup script each time I make a change...

Can the script create a logfile about what databases were dumped that can be emailed to me using blat.exe or something?
0
Comment
Question by:Reece Dodds
  • 2
  • 2
4 Comments
 
LVL 142

Accepted Solution

by:
Guy Hengel [angelIII / a3] earned 500 total points
ID: 38858952
I would do like this... create a backup.bat file like this:
"C:\Program Files (x86)\MySQL\MySQL Server 4.1\bin\mysql" -s  --user=username --password=password --skip-column-names --execute="select concat('mysqldump --where \'1=0\' ', schema_name ) from information_schema.schemata;" > backup_script.bat
.\backup_script.bat 

Open in new window

you adjust the path information, the "where" condition (to be removed) add other options to the mysqldump as you need, and that's it.
0
 
LVL 142

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 38858966
as explanation. the first line connects to the mysql database, and "builds" the second part by querying the database for all the databases in the mysql instance.
second line is running that script.
0
 
LVL 7

Author Comment

by:Reece Dodds
ID: 38932342
I will try an adoption of this script and let you know how I get on.  Thanks
0
 
LVL 7

Author Closing Comment

by:Reece Dodds
ID: 39828377
Thanks!
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Suggested Solutions

You may have already been in the need to update a whole folder stucture using a script. Robocopy does it well and even provides a list of non-updated files in a log (if asked to). Generally those files that were locked by a user or a process by the …
Sometimes drives fill up and we don't know why.  If you don't understand the best way to use the tools available, you may end up being stumped as to why your drive says it's not full when you have no space left!  Here's how you can find out...
This tutorial will show how to push an installation of Backup Exec to an additional server in both 2012 and 2014 versions of the software. Click on the Backup Exec button in the upper left corner. From here, select Installation and Licensing, then I…
This tutorial will give a an overview on how to deploy remote agents in Backup Exec 2012 to new servers. Click on the Backup Exec button in the upper left corner. From here, are global settings for the application such as connecting to a remote Back…

762 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now