Блог программиста Еремина Вячеслава Викторовича
(SQL) SQL (2010 год)

Избавляемся от Microsoft SQL Server Log Shipping

У Microsoft непосредственно в GUI управления Sql-сервером встроена возможность передавать бекапы с одного сервера на другой для возможности горячего резервирования данных.



Система эта - тупейшая до предела. Вот предположим сервер завирусился в данных или админ ошибся - удалил важные данные и не заметил. Тупая микрософтовская система этот глюк бекапирует и восстанавливает на target-сервере. Конфигурируется эта система тоже тупее не придумаешь - если заведомо не знаешь, то интуитивно ни за что не угадаешь какие дисковые пути надо вбивать в формы в том или ином месте - по source-сервере или по target-серверу. Плюс надо разбираться под какой учеткой стартует SQL-агент - какие ему права нужны на все директории локального и удаленного сервера.

Кстати и работает микрософтовский глюк неверно. Главная галка "удалять устаревшие бекапы" (старше например семи дней) - ни хрена она у этих дурней не работает. В результате диски переполняются устаревшими бакапами и в один прекрасный день вы поймете что благодаря микрософтовским чудо-сервисам последний бекап у вас сделан год назад.

Словом, гимороя не оберешься при настройке микрософтовского глюка, а как упадет основной сервер - так не оберешся гимороя для вывода резервной базы из монопольного однопользовательского режима. А как выведешь - так поймешь что там просто сдублированы те самые испорченные данные с основного сервера. Ну если конечно сами эти данные из-за неработающей галки "удалять устаревшие бекапы" не окажутся вообще годичной давности.

Поэтому на этой страничке я хотел показать как можно сделать резервирование данных без микрософтовских изысков:


Все начинается с того, что в конструкторе создается команда Backup database - которая в моем примере бекапирует базы в каталог R:\BAK. Базы у меня бекапируются в три приема - часть в два часа ночи, часть в три и часть четыре часа ночи.



После этого в пять часов ночи у меня запускается копирование бекапов на удаленный сервер. После бекапирования - папка для бекапов очищается:



Теперь осталось на удаленном сервере запустить мою популярную OpenSource Freeware программу - RemoveOldFile - утилита удаления устаревших файлов - и удалить устаревшие бекапы. BAT-фалом можно сохранять копии и в разные каталоги - такой вариант примера ниже справа. Моя утилита RemoveOldFile чистит устаревшие бекапы и из такой гирлянды каталогов.



Если вас интересует выполнение других административных задач на Microsoft SQL Server - почитайте например Настройка производительности SQL-сервера, если вас интересуют другие SQL-сервера - почитайте Используем PostgreSQL вместо MS SQL в проектах на NET и ASP.NET, Используем MySQL вместо MS SQL в проектах на ASP.NET.



Комментарии к этой страничке ( )
ссылка на эту страничку: http://www.vb-net.ru/SqlBackup/index.htm
<На главную>  <В раздел ASP>  <В раздел NET>  <В раздел SQL>  <В раздел Разное>  <Написать автору>  < Поблагодарить>