После создания нескольких web-проектов и, размещения их на выделенном сервере, у меня встал вопрос о бэкапировании баз данных, так как в них хранится вся основная информация по проектам. Вот какое решение я нашел для наших проектов:
- В интернете я нашел sql-скрипт, позволяющий забэкапить все имеющиеся базы данных. Вот его исходный код. Выбираем базу данных master, создаем хранимую процедуру spBackupAllDatabases и необходимые таблицы.
-
Далее, создаем sql-файл backup.sql следующего содержания:
use [master]
exec spBackupAllDatabases 'c:\Backup\', 'Full'
И исполняемый bat-файл backup.bat следующего содержания:
cd c:\backup
del *.rar
del result.txt
sqlcmd -S .\sqlexpress -i c:\backup\backup.sql -o c:\backup\result.txt
"c:\Program Files\WinRAR\rar.exe" a -r -df c:\backup\backup.rar c:\backup\*.bak
- Последним этапом будет настроить планировщик заданий Windows (Task Scheduler) на выполнение bat-файла, указать периодичность, я ставлю такие задания на 4 часа утра.
Это все! Теперь ваши архив ваших баз будет ежедневно складываться в папку c:\backup\. Ошибки - в файл result.txt. Было бы не плохо завести отдельный ftp-сервер и выкладывать туда эти бэкапы, но пока как-то руки не доходят, если у вас есть аналогичный решения - буду рад их прочитать в комментариях.
Удачных вам веб-проектов.