新しいSQL Server 2012インスタンスがあり、次のコマンドを実行するとエラーが発生します。
ALTER SERVICE MASTER KEY REGENERATE
エラー:
メッセージ15329、レベル16、状態1、行1
現在のマスターキーは復号化できません。これがデータベースマスターキーである場合は、この操作を実行する前に、セッションでそれを開こうとする必要があります。 FORCEオプションを使用すると、このエラーを無視して操作を続行できますが、古いマスターキーで暗号化されたデータは失われます。
強制オプションを試してみると、次のようになります。
現在のマスターキーは復号化できません。 FORCEオプションが指定されたため、エラーは無視されました。
エラー:
メッセージ33096、レベル16、状態1、行1
Service Master Keyの暗号化または復号化中に一般的なエラーが発生しました。
何か案は?
マスターキーを再生成するには、古いパスワードで開く必要があります。次に、それが開いたら、REGENERATE
構文を使用して新しいパスワードに変更できます。
OPEN MASTER KEY DECRYPTION BY PASSWORD = '0ldP@55w0rd';
ALTER MASTER KEY REGENERATE WITH ENCRYPTION BY PASSWORD = 'N3wP@55w0rd';
CLOSE MASTER KEY;
だからこそ、常に暗号化パスワードを安全に保護する必要があります。それらがなければ、データベースを復号化できない場所にいる可能性があります。