Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makale, Transact-SQL kullanılarak SQL Server'da bir veritabanı ana anahtarının nasıl geri getirileceğini açıklar. Veritabanı ana anahtarı, veritabanı içindeki diğer anahtarları ve sertifikaları şifreler. Eğer silinmiş veya bozulmuşsa, SQL Server bu anahtarları çözemeyebilir ve onlarla şifrelenen veriler fiilen kaybolur. Veritabanı ana anahtarını yedekten geri getirerek o anahtarlara erişimi geri kazanın.
Limitations
Veritabanı ana anahtarını geri getirdiğinizde, SQL Server şu anda aktif olan veritabanı ana anahtarıyla şifrelenmiş tüm anahtarları çözer ve ardından bunları geri kazandırılmış veritabanı ana anahtarıyla şifreler. Bu kaynak yoğun operasyonu düşük talep döneminde planlayın. Mevcut veritabanı ana anahtarı açık değilse veya açılamazsa, ya da onunla şifrelenen anahtarlardan herhangi biri çözülemiyorsa, geri yükleme işlemi başarısız olur.
Şifre çözmelerden herhangi biri başarısız olursa, geri yükleme de başarısız olur. Hataları görmezden gelme seçeneğini kullanabilirsiniz FORCE , ancak bu seçenek, çözülemeyen verilerin kaybına neden olur.
Eğer servis ana anahtarı veritabanı ana anahtarını şifreliyorsa, geri kazanılan veritabanı ana anahtarını da şifreler.
Mevcut veritabanında veritabanı ana anahtarı yoksa, RESTORE MASTER KEY bir veritabanı ana anahtarı oluşturulur. Servis ana anahtarı, yeni veritabanı ana anahtarını otomatik olarak şifrelemez.
Permissions
Veritabanı üzerinde CONTROL izni gereklidir.
Veritabanı ana anahtarını geri getir
Bu makaledeki kod örneklerinde AdventureWorks2025 veya AdventureWorksDW2025 örnek veritabanı kullanılır; bunları Microsoft SQL Server Samples and Community Projects ana sayfasından indirebilirsiniz.
Yedeklenen veritabanı ana anahtarının bir kopyasını fiziksel bir yedekleme medyasından veya yerel dosya sistemindeki bir dizinden alın.
Geri yüklemek istediğiniz veritabanı ana anahtarını içeren SQL Server örneğine bağlanın. Tanıdık SQL Server istemci araçlarını kullanarak bir SQL Server örneğine bağlanabilirsiniz, örneğin
, SQL Server Management Studio (SSMS) veya Visual Studio Code için MSSQL uzantısı gibi. Aşağıdaki Transact-SQL senaryosunu inceleyin ve çalıştırın.
Bu örnekte:
AdventureWorks2025için veritabanı ana anahtarınıC:\Temp\AdventureWorks2025_master_keykonumundan geri yüklersiniz.Yeni bir şifreleme şifresi
<new-password>belirlersin. Bu ayarları çevrenize göre değiştirin.
Caution
Gelecekte veritabanı ana anahtarını açmak için yeni şifreye ihtiyacınız var. Bu şifreyi güvenli ve emniyetli bir şekilde sakladığınızdan emin olun.
USE AdventureWorks2025; GO RESTORE MASTER KEY FROM FILE = 'C:\Backups\Keys\AdventureWorks2025_master_key' DECRYPTION BY PASSWORD = '<password>' ENCRYPTION BY PASSWORD = '<new-password>'; GO