Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения: SQL Server Управляемый экземпляр SQL Azure
Резервная копия SQL Server только для копирования — это резервная копия SQL Server, которая не зависит от последовательности создания обычных резервных копий SQL Server. Обычно создание резервного копирования приводит к изменению базы данных и влияет на то, как будут восстанавливаться последующие резервные копии. Однако иногда полезно выполнить резервное копирование для специальной цели, не влияя на общие процедуры резервного копирования и восстановления для базы данных. Для этой цели служат резервные копии типа copy-only.
Типы резервных копий только для копирования
Резервные копии только для копирования имеют следующие типы.
Полные резервные копии только для копирования (все модели восстановления)
Полная резервная копия типа «только копия» не может служить разностной базой или разностной резервной копией и не влияет на разностную базу.
Восстановление полной резервной копии с параметром COPY_ONLY выполняется так же, как и восстановление любой другой полной резервной копии.
Резервные копии журналов с опцией только копирования (только для модели полного восстановления и модели восстановления с массивным ведением журнала)
Копирование только журнала сохраняет существующую точку архивации журнала и, следовательно, не влияет на последовательность регулярных резервных копий журналов. Никакой необходимости в резервных копиях журналов только для копирования обычно нет. Вместо этого можно создать новую резервную копию журнала подпрограммы и восстановить ее (с помощью
WITH NORECOVERYпараметра) вместе с любыми предыдущими резервными копиями журналов, необходимыми для последовательности восстановления.Резервная копия журнала только для копирования иногда может оказаться полезной для выполнения оперативного восстановления. Для получения дополнительных сведений следуйте инструкциям в статье Пример: оперативное восстановление файла для чтения и записи (модель полного восстановления), используя вместо них файлы резервных копий, предназначенных только для копирования.
Журнал транзакций никогда не усекается после создания резервной копии типа copy-only.
Замечания
Резервные копии только для копирования записываются в is_copy_only столбце таблицы набора резервных копий.
В Управляемом экземпляре SQL Azure невозможно создать резервные копии типа copy-only для базы данных, зашифрованной с помощью прозрачного шифрования данных (TDE), управляемого службой. Управляемый службой TDE использует внутренний ключ для шифрования данных, и этот ключ нельзя экспортировать, поэтому не удалось восстановить резервную копию в другом месте. Для создания резервных копий зашифрованных баз данных, предназначенных только для копирования, рассмотрите возможность использования управляемого пользователем TDE, но при этом убедитесь, что ключ шифрования доступен для последующего восстановления.
Создайте резервную копию только для копирования
Вы можете создать резервную копию только для копирования с помощью SQL Server Management Studio, Transact-SQL или PowerShell.
А. Использование SQL Server Management Studio
В этом примере создаётся резервная копия только для копирования базы данных Sales на диск в расположение резервных копий по умолчанию.
В Обозревателе объектов подключитесь к экземпляру ядра СУБД SQL Server, а затем разверните этот экземпляр.
Разверните элемент Базы данных, щелкните
Salesправой кнопкой мыши, наведите указатель на пункт Задачи и выберите действие Создать резервную копию....На странице "Общие" в разделе "Источник" установите флажок "Резервная копия только для копирования".
Нажмите ОК.
В. Использование Transact-SQL
В этом примере создается резервная копия типа copy-only базы данных Sales с использованием параметра COPY_ONLY. Также создаётся резервная копия журнала транзакций с параметром COPY_ONLY.
BACKUP DATABASE Sales
TO DISK = 'E:\BAK\Sales_Copy.bak'
WITH COPY_ONLY;
BACKUP LOG Sales
TO DISK = 'E:\BAK\Sales_LogCopy.trn'
WITH COPY_ONLY;
Примечание.
COPY_ONLY не действует, если указан параметр DIFFERENTIAL .
В. Использование Transact-SQL и Управляемого экземпляра SQL Azure
Управляемый экземпляр Azure SQL поддерживает создание COPY_ONLY полных резервных копий. В этом примере выполняется резервное COPY_ONLY копирование MyDatabase в хранилище BLOB-объектов Microsoft Azure. Имя учетной записи хранилища — mystorageaccount. Контейнер называется myfirstcontainer. Политика доступа к хранилищу создается с правами на чтение, запись, удаление и список. Учетные данные SQL Server, https://mystorageaccount.blob.core.windows.net/myfirstcontainer, были созданы с использованием подписи общего доступа, связанной с секретом политики доступа к хранилищу. Сведения о резервном копировании SQL Server в хранилище BLOB-объектов Microsoft Azure см. в статьях Резервное копирование и восстановление SQL Server с использованием Хранилище BLOB-объектов Azure и Резервное копирование SQL Server на URL для Microsoft Хранилище BLOB-объектов Azure.
-- Prerequisite to have write permissions
CREATE CREDENTIAL [https://mystorageaccount.blob.core.windows.net/myfirstcontainer]
WITH IDENTITY = 'SHARED ACCESS SIGNATURE',
SECRET = 'sp=...'; -- Enter your secret SAS token here.
BACKUP DATABASE MyDatabase
TO URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/MyDatabaseBackup.bak'
WITH STATS = 5, COPY_ONLY;
Чтобы создать резервную копию только для копирования, разделенную на несколько полос, используйте следующий пример:
BACKUP DATABASE MyDatabase
TO URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/MyDatabase-01.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/MyDatabase-02.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/MyDatabase-03.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/MyDatabase-04.bak'
WITH COPY_ONLY;
Д. С помощью PowerShell
В этом примере создается резервная копия только для копирования базы данных Sales с использованием параметра -CopyOnly.
Backup-SqlDatabase -ServerInstance 'SalesServer' -Database 'Sales' -BackupFile 'E:\BAK\Sales_Copy.bak' -CopyOnly