【问题标题】:Cannot find the certificate找不到证书
【发布时间】:2011-01-14 21:27:04
【问题描述】:

我们在 BACKUP CERTIFICATE 上收到 T-SQL (SQL Server 2008 R2) 错误: ERROR_NUMBER 15151,SEVERITY 16,STATE 1,PROCEDURE -,LINE 8,MESSAGE:找不到证书“certificate1”,因为它不存在或您没有权限。

我们可以在 master.sys.certificates 中看到证书。

我们的伪代码:

  • 将未附加的 template_db 复制到 db1

  • 附加 db1

  • 创建证书1(在主数据库的存储过程中)

  • 生成@password

  • CREATE DATABASE ENCRYPTION KEY ... ENCRYPTION BY SERVER CERTIFICATE '+@certificate_name +...(在 db1 的存储过程中)

  • 使用证书 1 为 db1 启用透明数据库加密。 (N'ALTER DATABASE '+@db_name+N' SET ENCRYPTION ON')

  • N'BACKUP CERTIFICATE '+@certificate_name+N' TO FILE = '''+@certificate_file_path+N''' 带私钥( 文件 = '''+@private_key_file_path+N''', 密码加密 = '''+@password+N''''

为了尝试解决该错误,我们每次都在不同的数据库(包括 db1 和 master)中使用 BACKUP CERTIFICATE 代码测试了三种方法。都得到相同的错误。

有什么想法吗?谢谢。

【问题讨论】:

  • 我不能投票赞成你的答案,因为我没有足够的代表。谢谢您的发布!这是我的问题,我需要突出显示主数据库以备份存储在其中的证书。

标签: sql-server sql-server-2008 certificate sql-server-2008-r2


【解决方案1】:

我们再次尝试,在主数据库中运行 BACKUP CERTIFICATE,这次成功了。

【讨论】:

    猜你喜欢
    • 2011-07-12
    • 2011-03-16
    • 1970-01-01
    • 2021-02-28
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 2011-12-16
    • 1970-01-01
    相关资源
    最近更新 更多