Восстановление главного ключа базы данных
В этом разделе описывается восстановление ключа master базы данных в SQL Server 2014 с помощью Transact-SQL.
В этом разделе
Перед началом работы
Восстановление главного ключа базы данных с помощью Transact-SQL
Перед началом
Ограничения
Когда главный ключ восстановлен, SQL Server дешифрует все ключи, зашифрованные текущим активным главным ключом, и затем шифрует эти ключи с помощью восстановленного главного ключа. Данную ресурсоемкую операцию следует планировать на то время, когда количество обращений к серверу минимальное. Если текущий главный ключ базы данных не открыт или не может быть открыт, или если какой-либо зашифрованный им ключ не может быть дешифрован, операция восстановления заканчивается неудачно.
Если во время расшифровки любого объекта произойдет ошибка, восстановление будет прервано. Чтобы пропускать ошибки, можно использовать параметр FORCE, но это приведет к потере всех данных, которые не удается расшифровать.
Если главный ключ был зашифрован главным сервисным ключом, восстановленный главный ключ также будет зашифрован главным сервисным ключом.
Если в текущей базе данных нет главного ключа, RESTORE MASTER KEY создает главный ключ. Новый главный ключ не будет автоматически шифроваться главным сервисным ключом.
Безопасность
Разрешения
Требует разрешения CONTROL для базы данных.
В среде SQL Server Management Studio с помощью Transact-SQL
Восстановление главного ключа базы данных
Сохраните резервную копию главного ключа базы данных с физического носителя данных резервных копий или из папки локальной файловой системы.
В обозревателе объектовподключитесь к экземпляру компонента Компонент Database Engine.
На стандартной панели выберите пункт Создать запрос.
Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить.
-- Restores the database master key of the AdventureWorks2012 database. USE AdventureWorks2012; GO RESTORE MASTER KEY FROM FILE = 'c:\backups\keys\AdventureWorks2012_master_key' DECRYPTION BY PASSWORD = '3dH85Hhk003#GHkf02597gheij04' ENCRYPTION BY PASSWORD = '259087M#MyjkFkjhywiyedfgGDFD'; GO
Примечание
Путь к файлу ключа и пароль ключа (если он существует) будет отличаться от вышеуказанного. Убедитесь, что оба этих параметра соответствуют настройке конкретного сервера и ключа.
Дополнительные сведения см. в разделе RESTORE MASTER KEY (Transact-SQL)