Создание копий баз данных с помощью резервного копирования и восстановления

В SQL Server 2008 можно создать новую базу данных путем восстановления резервной копии базы данных, созданной в SQL Server 2000, SQL Server 2005 или SQL Server 2008. Однако восстановление резервных копий баз данных master, model и msdb, созданных в SQL Server 2000 или SQL Server 2005, в SQL Server 2008 невозможно. Кроме того, резервные копии, созданные в SQL Server 2008, невозможно восстановить в более ранних версиях SQL Server.

Резервные копии, созданные с помощью SQL Server 7.0 или более ранних версий, имеют несовместимый формат и не могут быть восстановлены в SQL Server 2008. Сведения о миграции базы данных, созданной в SQL Server 6.5 или более ранней версии, в SQL Server 2005, см. в разделе Копирование баз данных SQL Server 7.0 и более ранних версий.

Важное примечаниеВажно!

В SQL Server 2008 используется путь по умолчанию, отличный от пути, использованного в предыдущих версиях. Поэтому для восстановления из резервной копии базы данных, созданной в месте расположения по умолчанию SQL Server 2000 или SQL Server 2005, необходимо использовать параметр MOVE. Сведения о новом пути по умолчанию см. в разделе Расположение файлов для экземпляра по умолчанию и именованных экземпляров SQL Server. Дополнительные сведения о перемещении файлов баз данных см. в статье «Перемещение файлов баз данных» далее в этом подразделе.

Основные этапы копирования базы данных, используя функции резервного копирования и восстановления

При использовании резервного копирования и восстановления для копирования базы данных на другой экземпляр SQL Server компьютер-источник и целевой компьютер могут быть любой платформой, на которой запускается SQL Server.

Основные этапы.

  1. Создайте резервную копию базы данных-источника, которая может находиться на экземпляре SQL Server 2000, SQL Server 2005 или SQL Server 2008. Компьютер, на котором запущен этот экземпляр SQL Server, называется компьютером-источником.

  2. На компьютере, куда нужно скопировать базу данных (целевой компьютер), подключите экземпляр SQL Server, на котором будет восстановлена база данных. При необходимости создайте те же устройства резервного копирования на целевом экземпляре сервера, что использовались для резервного копирования баз данных-источников.

  3. Восстановите резервную копию базы данных-источника на целевом компьютере. При восстановлении базы данных автоматически создаются все ее файлы.

В следующих разделах рассматриваются дополнительные вопросы, которые могут повлиять на процесс копирования.

Перед восстановлением файлов базы данных

При восстановлении базы данных необходимые файлы создаются автоматически. По умолчанию у файлов, созданных SQL Server в процессе восстановления, те же имена и пути, что и у файлов резервной копии исходной базы данных на компьютере-источнике. Во избежание ошибок и нежелательных последствий определите перед операцией восстановления, какие файлы будут создаваться автоматически, так как:

  • файлы с такими именами уже могут существовать на данном компьютере, что вызовет ошибку;

  • на целевом диске может быть недостаточно свободного места;

  • нужная структура каталогов или сопоставление дисков могут отсутствовать на данном компьютере;

    например, резервная копия содержит файл, который нужно восстановить на диск E, но на целевом компьютере диска E нет;

  • если файлы базы данных можно заменить, все существующие базы данных и файлы с такими же именами, что и в резервной копии, будут перезаписаны, если только эти файлы не принадлежат другой базе данных.

ПредупреждениеВнимание!

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

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

Перемещение файлов баз данных

Если файлы резервной копии базы данных нельзя восстановить на целевом компьютере по причинам, перечисленным выше, необходимо переместить файлы в новое место назначения, где они могут быть восстановлены. Например:

  • Нужно восстановить базу данных из резервных копий, созданных в месте расположения по умолчанию для SQL Server 2000 или SQL Server 2005.

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

  • Может оказаться необходимым создать копию существующей базы данных на том же компьютере для тестирования. В этом случае файлы исходной базы данных уже существуют, поэтому при создании копии базы данных во время операции восстановления надо указать другие имена файлов.

Дополнительные сведения см. в подразделе «Восстановление файлов и файловых групп в новое место назначения» далее в этом разделе.

Смена имени базы данных

Можно изменить имя базы данных при восстановлении на целевом компьютере без восстановления файлов с последующим изменением имени базы вручную. Например, нужно изменить имя базы данных с Sales на SalesCopy, чтобы указать на то, что это копия базы данных.

Имя базы данных, явно задаваемое при ее восстановлении, автоматически используется в качестве нового имени базы данных. Так как такой базы данных еще не существует, новая база данных создается из файлов резервной копии.

Обновление базы данных с помощью восстановления

При восстановлении резервных копий из SQL Server 2000 или SQL Server 2005 полезно заранее знать, существует ли на целевом компьютере путь (диск и каталог) для каждого полнотекстового каталога резервной копии. Чтобы получить список всех логических и физических имен — пути и имени файла — всех файлов резервной копии, включая файлы каталогов, выполните инструкцию RESTORE FILELISTONLY FROM <backup_device>. Дополнительные сведения см. в разделе Инструкция RESTORE FILELISTONLY (Transact-SQL).

Если нужный путь на целевом компьютере не существует, есть два варианта.

  • Создать нужное сопоставление дисков или структуру каталогов на целевом компьютере.

  • Переместить файлы каталогов на новое место назначения во время операции восстановления с помощью предложения WITH MOVE инструкции RESTORE DATABASE. Дополнительные сведения см. в разделе RESTORE (Transact-SQL).

Дополнительные сведения об альтернативных параметров обновления полнотекстовых индексов см. в разделе Обновление полнотекстового поиска.

Владелец базы данных

При восстановлении базы данных на другом компьютере имя входа пользователя SQL Server или Microsoft Windows, начавшего процесс восстановления, автоматически становится именем владельца базы данных. При восстановлении базы данных системный администратор или владелец новой базы данных могут сменить ее владельца. Для предотвращения несанкционированного восстановления базы данных устанавливайте пароли на носители или сами резервные копии. Дополнительные сведения см. в разделе Вопросы безопасности при восстановлении и резервировании.

Управление метаданными при восстановлении базы данных на другой экземпляр сервера

Чтобы обеспечить целостность работы пользователей и приложений при восстановлении базы данных на другой экземпляр сервера, на новом экземпляре необходимо повторно создать некоторые или все метаданные, например имена входа и задания. Дополнительные сведения см. в разделе Управление метаданными при обеспечении доступности базы данных на другом экземпляре сервера.

Просмотр файлов данных и журналов в резервном наборе данных

Восстановление файлов и файловых групп в новое место

Восстановление файлов и файловых групп поверх существующих

Восстановление файлов и файловых групп в новое место

Восстановление базы данных с новым именем

Перезапуск прерванной операции восстановления

Изменение владельца базы данных

Копирование базы данных с помощью объектов SMO