您好,我是小DAI,专注于数据库管理员相关的技术问答,请问有什么可以帮您?

RECOVER ENCRYPTION ROOT KEYS 语句(备份和恢复)

此语句允许您恢复租户数据库的加密根密钥或所有 LSS 数据库。要恢复系统数据库的加密根密钥或所有 LSS 数据库,请使用 hdbnsutil 工具。

语法

RECOVER ENCRYPTION ROOT KEYS [ { AND SETTINGS | (  ) } ] 

FOR

USING FILE

PASSWORD ''

[ SECURE STORE SECOND ACCESS PRIVATE KEY '' PASSWORD '' ]

语法元素

AND SETTINGS AND SETTINGS 恢复完整的 LSS 备份。这包括密钥、密钥管理配置、加密控制和加密设置。注意AND SETTINGS 替换所有 LSS 数据库。如果未指定 AND SETTINGS,则仅恢复加密根密钥。备份中的加密根密钥已添加,但不会替换。仅当输入文件格式为 LSS 备份且安全存储也是 LSS 时,AND SETTINGS 才有效。在所有其它情况下,如果使用 子句,语句将失败。指定根键值类型。仅当安全存储为 SSFS 时才能指定 。 ::= [, ]如果未指定 ,则恢复存储在指定文件中的所有加密根密钥类型。指定密钥类型的类型。 ::= { PERSISTENCE | APPLICATION | BACKUP | LOG }指定数据库的名称。指定文件系统中的加密根密钥备份定义文件。 ::= FILE ( { '' | '<path>', '' } )备份文件的名称由以下元素构成:__rootkeys如果未指定 <path>,SAP HANA 将尝试从 global.ini 文件的 部分中的配置参数 中检索备份位置。如果未配置 basepath_rootkeybackup 参数,则使用租户数据库 ${DIR_INSTANCE}/backup/sec/DB_/ 或系统数据库 ${DIR_INSTANCE}/backup/sec/SYSTEMDB/ 的缺省备份路径。指定创建备份时使用的根密钥备份密码。使用 ALTER SYSTEM SET ENCRYPTION ROOT KEYS BACKUP PASSWORD,可在数据库安装早期设置密码,并偶尔稍后进行更新。当前设置的密码在创建安全存储备份时使用。有关详细信息,请参阅 BACKUP ENCRYPTION ROOT KEYS 语句(备份和恢复)。 SECURE STORE SECOND ACCESS PRIVATE KEY 仅当想要恢复在 LSS 配置了无法再访问的活动外部密钥管理配置时创建的备份时,才需要安全存储第二次访问。使用第二个访问密钥,LSS 停止使用 KMS 保护并恢复为本地保护。因此,如果需要 KMS 保护,则需要再次设置。安全存储SECOND ACCESS 只能与 AND SETTINGS 一起使用。以 .perm 文件格式指定私钥。 必须包含具有私钥的 .pem 文件的内容。指定用于解密 ENCRYPTED PRIVATE KEY 的口令。私钥可以受到保护/加密或取消保护,其中 PASSWORD '' 用于取消保护/访问/解密私钥。受保护/已加密开始加密私钥未保护开始私钥 私钥必须使用 clear 格式 (-----BEGIN PRIVATE KEY-----) 或通过口令加密 (-----BEGIN ENCRYPTED PRIVATE KEY-----) 以 .pem 文件格式表示。 密码指定用于解密 ENCRYPTED PRIVATE KEY 的口令。为明文私钥 (BEGIN PRIVATE KEY) 指定空口令(两个单引号)。密码是可选的。

描述

限制此语句只能用于恢复加密根密钥备份或从文件系统中恢复完整的 LSS 备份(所有数据库)。不支持与第三方备份工具一起使用。

该语句必须在系统数据库中执行。

为防止持久层中出现不一致,租户数据库必须处于离线状态。

系统数据库用户 (adm) 是否为备份文件的所有者无关紧要。

对于 LSS, RECOVER ENCRYPTION ROOT KEYS 支持第二个访问密钥。如果与密钥管理系统的连接丢失或删除了密钥,则可以使用第二个访问密钥恢复备份。

使用此语句,只能为租户数据库恢复加密根密钥或完整 LSS 备份(所有数据库)。要恢复系统数据库的加密根密钥或完整 LSS 备份(所有数据库),请使用 hdbnsutil 工具。

有关 hdbnsutil 实用程序的详细信息,请参阅《SAP HANA 管理指南》。

许可

需要 DATABASE RECOVERY OPERATOR 或 DATABASE ADMIN 系统权限。

示例

此示例从备份文件 /backup/Hs/data/backup001_testDB_rootkeys 恢复 testDB 数据库的根密钥类型 PERSISTENCE 的加密根密钥。仅适用于 SSFS。

RECOVER ENCRYPTION ROOT KEYS PERSISTENCE FOR testDB USING FILE ('/backup/HDB/rootkeys/backup001') PASSWORD ''

此示例从受口令保护的 LSS 备份中恢复加密根密钥,并使用显式给定的第二个访问密钥(也受口令保护)。

RECOVER ENCRYPTION ROOT KEYS FOR testDB USING FILE ('/backup/HDB/rootkeys/backup001') PASSWORD MyBackupPwd123 SECURE STORE SECOND ACCESS PRIVATE KEY '-----BEGIN ENCRYPTED PRIVATE KEY-----\nMIIFH... \n-----END ENCRYPTED PRIVATE KEY-----' PASSWORD 'PasswordOfSecondAccessKey'

此示例从受口令保护的 LSS 备份中恢复加密根密钥,并使用显式给定的不受口令保护的第二个访问密钥。

RECOVER ENCRYPTION ROOT KEYS FOR testDB USING FILE ('/backup/HDB/rootkeys/backup001') PASSWORD 'MyBackupPwd123' SECURE STORE SECOND ACCESS PRIVATE KEY '-----BEGIN PRIVATE KEY-----\nMIIFH... \n-----END PRIVATE KEY-----' PASSWORD ''