Резервное копирование и восстановление SQL базы данных с помощью SSMS

Почему резервные копии и восстановление важны
Резервное копирование позволяет вернуть базу данных в известное корректное состояние при аппаратных сбоях, ошибках пользователей, ошибочных миграциях или злонамеренных атаках. Быстрое восстановление сокращает простой приложений и потери бизнеса.
Коротко: поддерживайте регулярные резервные копии, проверяйте их восстановление и храните копии вне основного сервера.
Как сделать резервную копию базы данных через SSMS
SSMS предоставляет интерфейс для создания резервной копии в несколько кликов. Ниже — развернутые шаги и примечания для практического применения.
- Откройте SQL Server Management Studio и подключитесь к целевому серверу.
- В обозревателе объектов найдите узел Базы данных и раскройте его.
- Правой кнопкой мыши щёлкните по базе данных, которую нужно сохранить.
- В контекстном меню выберите Задачи > Создать резервную копию.
- В диалоговом окне “Резервное копирование базы данных” укажите тип резервной копии (Полная, Дифференциальная, Лог транзакций) и целевой файл.
- В поле назначения добавьте путь для файла резервной копии — он должен иметь расширение .bak.
- Нажмите OK, чтобы запустить процесс. Следите за журналом выполнения на предмет ошибок.
Важно: храните копии в защищённом каталоге и, по возможности, копируйте резервные копии на отдельный физический носитель или в облако.
Команда SQL для полной резервной копии
Вместо интерфейса можно выполнить SQL-запрос. Это удобно для автоматизации.
BACKUP DATABASE WideWorldImporters TO DISK = 'C:\...\Backup\WideWorldImporters.bak'Замените путь и имя базы на свои значения.
Как восстановить SQL базу данных через SSMS
Порядок восстановления прост, но требует внимания к источнику и состоянию резервной копии.
- Запустите SSMS и подключитесь к серверу.
- В левом окне найдите узел Базы данных.
- Правой кнопкой мыши щёлкните по узлу Базы данных и выберите Восстановить базу данных.
- В секции Источник выберите Устройства и нажмите кнопку с тремя точками (…), чтобы открыть диалог выбора файлов резервной копии.
- Нажмите Добавить, укажите файл .bak и подтвердите.
- В разделе “Свойства” проверьте список файлов и опции восстановления (Overwrite — перезаписать существующую базу, восстановить состояние и т.п.).
- Нажмите OK — процесс восстановления начнётся.
После завершения проверьте целостность базы и журналы ошибок.
Команда SQL для восстановления
RESTORE DATABASE WideWorldImporters FROM DISK = 'C:\...\Backup\WideWorldImporters.bak'При необходимости используйте параметры WITH MOVE, чтобы указать новые пути для файлов данных и журналов.
Чек-лист для резервного копирования и восстановления (SOP)
- Перед бэкапом: проверьте доступное место на диске и права доступа к папке.
- Тип бэкапа: определите стратегию — полные + дифференциальные + журналы транзакций.
- Шифрование и доступ: резервные копии должны храниться в зашифрованном виде и доступны ограниченному списку администраторов.
- Тест восстановления: выполняйте тестовое восстановление как минимум ежемесячно.
- Документация: храните инструкции по восстановлению и список контактов ответственных.
Роли и ответственность:
- DBA: настройка расписаний, проверка целостности, тесты восстановления.
- Dev/Ops: автоматизация копирования резервных файлов, мониторинг хранилища.
- Бизнес-заказчик: утверждение RTO/RPO и периодичности резервного копирования.
Критерии приёмки
- База успешно восстанавливается из последней резервной копии в тестовой среде.
- Приложение проходит smoke-тесты после восстановления.
- Журналы восстановления не содержат ошибок.
- Время восстановления укладывается в допустимый RTO.
Когда этот подход не подойдёт (контрпримеры)
- Если требуется минимальный RTO на уровне секунд, классический файл .bak может быть недостаточен — рассмотрите репликацию, Always On Availability Groups или зеркалирование.
- Для распределённых NoSQL-систем инструкции SSMS неприменимы.
- Если политики безопасности запрещают хранить резервные копии на локальных серваках — настройте централизованное защищённое хранилище.
Схема принятия решения (Mermaid)
flowchart TD
A[Проблема с данными] --> B{Есть свежая резервная копия?}
B -- Да --> C[Проверить журнал восстановления]
B -- Нет --> D[Оценить альтернативы: репликация, журнал транзакций, экспорт]
C --> E{Риск/время допустимы?}
E -- Да --> F[Восстановить из .bak]
E -- Нет --> G[Переключиться на DR-план]
D --> GСправочник команд и параметры
- BACKUP DATABASE — полная резервная копия.
- BACKUP LOG — резервная копия журнала транзакций.
- RESTORE DATABASE — восстановление базы.
- RESTORE VERIFYONLY — проверка целостности файла резервной копии без восстановления.
- WITH MOVE — указывает новые пути для файлов данных при восстановлении.
Примеры:
-- Проверить файл резервной копии
RESTORE VERIFYONLY FROM DISK = 'C:\...\Backup\WideWorldImporters.bak'
-- Восстановление с перемещением файлов
RESTORE DATABASE WideWorldImporters FROM DISK = 'C:\...\Backup\WideWorldImporters.bak'
WITH MOVE 'WideWorldImporters_Data' TO 'D:\MSSQL\Data\WideWorldImporters.mdf',
MOVE 'WideWorldImporters_Log' TO 'E:\MSSQL\Log\WideWorldImporters.ldf'Тестовые кейсы и приёмка
- Успешное восстановление из последнего .bak в тестовой среде — пройдено.
- Проверка данных: выборка контрольных записей, сверка хеш-сумм — пройдена.
- Восстановление с помощью RESTORE VERIFYONLY — не содержит ошибок.
Частые ошибки и рекомендации
- Ошибка доступа: проверьте права пользователя SQL Server для чтения файла .bak.
- Недостаток места: освободите диск или измените путь назначения.
- Несовпадение имён файлов: используйте WITH MOVE при восстановлении на другой сервер.
Краткое резюме
Резервное копирование и восстановление через SSMS — базовая и надёжная операция для большинства сценариев восстановления. Основные правила — регулярность, тестирование и защищённое хранение копий.
Часто задаваемые вопросы
Вопрос: Как часто нужно делать резервные копии?
Ответ: Частота зависит от RPO: для критичных данных — несколько раз в день или непрерывная репликация; для менее критичных — ежедневные полные бэкапы с промежуточными дифференциальными.
Вопрос: Можно ли восстановить базу на другой сервер с другим путём файлов?
Ответ: Да. При восстановлении используйте опцию WITH MOVE, чтобы указать новые пути для файлов данных и журналов.
Вопрос: Как проверить, что резервная копия цела?
Ответ: Выполните RESTORE VERIFYONLY и периодические тестовые восстановления в изолированной среде.
Похожие материалы
Эффективный поиск работы на LinkedIn
Подключение контроллера Xbox к Apple Vision Pro
Сбросить AirPods и удалить их из Apple ID
Отключить уведомления Windows Defender
Как шум снижает продуктивность и что делать