您好,欢迎访问一九零五行业门户网

Msg 15581 Please create a master key in the database or ope

今天测试将加密的数据库还原到另外一台服务器,执行解密代码的时候出现下面的错误信息:msg15581,level16,state3,line1pleasecreatea&..
今天测试将加密的数据库还原到另外一台服务器,执行解密代码的时候出现下面的错误信息:
msg 15581, level 16, state 3, line 1
please create a master key in the database or open themaster key in the session before performing this operation.
解决办法1:用密码打开database master key
解决办法2:可以还原服务主密匙。
参考:open master key restoreservice master key (transact-sql)
注意: 因为servicemaster key是加密层次的根,如果有其他数据库已经用service master key做过加密会导致问题,所以慎重使用。
原因: 默认情况下,数据库主密钥使用服务主密钥进行加密,,需要此数据库主密钥进行解密或加密时,它将自动打开。如果数据库第一次附加或还原到新的 sql server 实例时,数据库主密钥(由服务主密钥加密)的副本尚未存储在服务器中。 必须使用 open master key 语句解密数据库主密钥 (dmk)。 一旦 dmk 解密后,通过使用 alter master key regenerate 语句向服务器提供 dmk(使用服务主密钥 (smk) 加密)的副本,即可拥有将来启用自动解密的选项。
本文出自 “关注sql server技术” 博客,请务必保留此出处
其它类似信息

推荐信息