Делаем регулярный бэкап БД под Windows

Главные вкладки

Аватар пользователя Anton L. Safin Anton L. Safin 17 февраля 2009 в 6:40

Так как возник соответствующий вопрос в форуме, краткое описание того, как можно делать регулярный бэкап базы данных под виндой (если, к примеру, вы отлаживаете сайт на Denwer'е).

Создаешь bat'ничек (например, backup.bat) примерно с таким содержанием:

mysqldump -uroot -hlocalhost -pmypass my_database > my_database.txt

root - имя пользователя, mypass - пароль, my_database - имя базы, которую надо бэкапить. Только вот не помню, есть ли в denwer'е по умолчанию mysqldump, поэтому см. прикрепленный файл.

Для того, чтобы сделать регулярный бэкап с текущей датой, создаем файлик todaybackup.bat:

[user=echo]echo[/user] off
for /f "tokens=1-3 delims=." %%i in ("%date%") do (
call backup.bat %%k-%%j-%%i
)

Если нужен более частый бэкап (к примеру, раз в час), для формирования текущего времени можно использовать утилиту curtime32, тогда содержимое этого bat-файла вообще будет состоять из одной строки:

curtime32.exe "backup.bat $y$M$d$h$m$s" /exec

В нашем первом файлике, backup.bat, соответственно, меняем my_database.txt на my_database_%1.txt

И - финальный шаг - настраиваем запуск нашего bat'ника с необходимой периодичностью в "Назначенных заданиях" MS Windows или, если хочется показать свою продвинутость, в nnCron

ВложениеРазмер
Иконка пакета mysqldump.zip663.97 КБ
Иконка пакета curtime32.zip19.66 КБ

Комментарии