Как настроить ежедневное резервное копирование с MS SQL Server Server 2005
Просто интересно, может ли кто-нибудь сообщить мне хорошую процедуру для установки ежедневных инкрементных и полных резервных копий в любое место из экземпляра MS SQL 2005.
Бонусные баллы для каждого могут описать, как это сделать без агента сервера (для Express).
4 ответа
- Планируйте свою стратегию восстановления. Вам нужно подумать о том, как вы хотите восстановить базу данных. Как долго вы можете быть внизу? Сколько резервных копий вы хотите перебрать, чтобы выполнить восстановление. Это определит правильное сочетание полных, разностных и даже резервных копий журнала транзакций.
- После того, как вы спланировали свою стратегию восстановления, разместите ее на временной шкале, чтобы убедиться, что она имеет смысл. Это также позволяет вам проверять интервалы, когда вы собираетесь делать резервные копии.
- Определите основные команды T-SQL для каждого шага резервного копирования. Вы должны выполнить запись на локальный диск (или в хранилище, подключенное к SAN, которое отображается как локальный диск), так как это самый быстрый способ создания резервной копии и устранение неполадок в сети из-за проблем с сетью. Вы смотрите на BACKUP DATABASE и, возможно, BACKUP LOG здесь.
- Определите, как вы собираетесь получать резервные копии из системы на другой носитель. Собираетесь ли вы скопировать в сетевой ресурс? Или вы собираетесь сделать резервную копию прямо на ленту? Как долго эти резервные копии будут храниться в этом месте? Эти вопросы будут определять ваше соглашение об именах и какие другие механизмы вам могут понадобиться.
- Сценарий это. Если вы работаете в системе без агентов, вы можете использовать планировщик заданий, но вы не получите уведомление по электронной почте, если оно выйдет из строя, то есть кому-то потребуется регулярно проверять это. Но поскольку мы говорим о SQL Server 2005, вы можете использовать SQLCMD для выполнения команд T-SQL для создания резервных копий.
- Если вы просто делаете резервное копирование на ленту из этой системы, то, вероятно, все, что осталось, это создать пакетный файл, который вызывает команды SQLCMD и T-SQL. Если вам нужно скопировать файлы, вам нужно добавить соответствующие команды копирования. Если вам нужно сделать что-то более необычное, например, присвоить имена файлам резервных копий определенным образом, вам может понадобиться немного сценариев, таких как VBScript, для генерации правильных команд. В этой ситуации я использовал VBScript для создания командного файла, который я выполню следующим. Вы можете установить ADO-соединение из VBScript и выполнить команды резервного копирования таким образом, но мне больше нравится подход с использованием пакетных файлов, потому что тогда я точно вижу, что было выполнено.
Еще несколько вещей, чтобы добавить:
- убедитесь, что вы используете опцию WITH CHECKSUM в резервных копиях. Он проверяет контрольные суммы страниц файла данных и читает их, чтобы убедиться, что он не создает резервные копии. Он также вычисляет контрольную сумму для всей резервной копии, которую вы можете использовать, когда вы....
- периодически восстанавливайте резервные копии, чтобы убедиться, что они действительны. По крайней мере, запустите RESTORE VERIFYONLY ... WITH CHECKSUM, который в основном сделает все, кроме записи битов обратно на диск, включая повторное тестирование всех контрольных сумм. Лучше всего на самом деле восстановить их в другой системе.
- попрактикуйтесь в восстановлении после стихийного бедствия - именно поэтому вы в первую очередь берете резервные копии. Убедитесь, что резервные копии, которые вы делаете, позволяют восстановить ваши RTO и RPO.
Несколько постов в блоге с гораздо большей информацией, чтобы рассказать о том, что говорили все: http://www.sqlskills.com/BLOGS/PAUL/post/Importance-of-validating-backups.aspx и http: //www.sqlskills. ком / БЛОГИ / ПОЛ / пост / Значение-на-имеющий-на-право-backups.aspx
ура
К. Брайан Келли проделал большую работу, объясняя весь процесс.
Вот отличный скрипт для автоматизации процесса резервного копирования экспресс-базы данных. В Части 2 также есть Выпуск для 2008 и исполняемый файл, поэтому вы не используете sqlcmd.
ExpressMaint можно загрузить в Codeplex
Следующие бесплатные видео по SQL Server также помогут вам получить представление о концепциях, передовых методах и практических шагах, которые вам необходимо реализовать (хотя они предназначены для установок, отличных от SQL Express):
Резервные копии SQL Server демистифицированы
Параметры резервного копирования SQL Server
Рекомендации по резервному копированию SQL Server
Резервное копирование с помощью SQL Server Management Studio
Восстановление баз данных с помощью SQL Server Management Studio
Кроме того, как упоминает Пол, я НАСТОЯТЕЛЬНО рекомендую регулярно практиковаться в том, как восстанавливать / восстанавливать ваши базы данных. Потому что изучение того, как сделать это после сбоя, безусловно, самое лучшее время, чтобы выяснить это... и нет никаких гарантий, что ваши резервные копии работают даже правильно, если вы НЕ РЕГУЛИРУЕТЕ их тестирование.