Резервное копирование MS SQL в «Бересте»: как мы используем VDI
newsare.net
Вокруг резервного копирования Microsoft SQL Server обычно обсуждают либо штатные BACKUP DATABASE ... TO DISK, либо интеграцию с большими корпоративными системамРезервное копирование MS SQL в «Бересте»: как мы используем VDI
Вокруг резервного копирования Microsoft SQL Server обычно обсуждают либо штатные BACKUP DATABASE ... TO DISK, либо интеграцию с большими корпоративными системами защиты данных. Между этими двумя мирами есть важный слой: VDI (Virtual Device Interface). Именно через него внешнее приложение может встроиться в процесс резервного копирования и восстановления так, чтобы SQL Server писал не в обычный .bak по своему усмотрению, а в управляемый приложением поток данных.В этой статье разберем небольшой, но вполне рабочий проект на C++, который реализует РК и ВД для MS SQL Server через VDI в ПО «Береста». Утилита поддерживает:• полный, дифференциальный и логический backup;• restore одной базы или всех найденных;• striped backup/restore в несколько потоков;• Windows-аутентификацию и SQL-аутентификацию;• работу с SQL Server 2008-2022.Почему VDI?Если задача ограничивается локальным резервным копированием на диск, VDI не нужен: достаточно стандартных T-SQL команд. Но как только появляется внешняя система резервного копирования, картина меняется.СРК обычно хочет сама управлять:• жизненным циклом задания;• маршрутом потока данных;• параллелизмом;• политиками хранения;• журналированием и обработкой ошибок.И здесь VDI становится мостом между SQL Server и внешним приложением. SQL Server продолжает выполнять привычные BACKUP и RESTORE, но вместо физического файла работает с виртуальными устройствами. А уже клиент VDI читает или записывает данные туда, куда считает нужным: в локальные файлы, сетевое хранилище, object storage, дедуп-слой или собственный медиасервер. Читать далее Read more












