ALTER DATABASE 语句(租户数据库管理)
对租户数据库进行更改。
描述
允许您对数据库进行更改。重置系统用户密码是经过审核的操作 在 SystemDB 和租户上。此外,租户数据库必须关闭 在重置系统用户密码之前。
使用 ALTER DATABASE 语句删除服务不会导致其余服务 自动重新分发。
权限
使用此语句需要 DATABASE ADMIN 系统权限。
要使用该子句,您还必须具有 ENCRYPTION ROOT KEY ADMIN 系统权限。<key_management_spec_list>
例子
将服务添加到位于 端口 的租户数据库中。scriptservermy_databasehostA30303
ALTER DATABASE my_database ADD 'scriptserver' AT LOCATION 'hostA:30303';
更改服务的端口号:scriptserver
ALTER DATABASE my_database ALTER 'scriptserver' AT 'hostA:30303' TO '30340';
设置租户数据库的操作系统用户:my_database
ALTER DATABASE my_database OS USER 'KPC28' OS GROUP 'admin';
完成租户数据库的副本,并删除 源数据库:my_database
ALTER DATABASE my_database FINALIZE REPLICA DROP SOURCE DATABASE;
取消租户数据库的副本:my_database
ALTER DATABASE my_database CANCEL REPLICA;
将租户数据库上的系统用户密码设置为:my_databasefhu37656
ALTER DATABASE my_database SYSTEM USER PASSWORD fhu37656;
将租户数据库的重启模式设置为不 系统重启后重启:my_database
ALTER DATABASE my_database NO RESTART;
将加密配置控制设置为租户数据库:my_database
ALTER DATABASE my_database ENCRYPTION CONFIGURATION CONTROLLED BY LOCAL DATABASE;
为租户数据库启用日志文件加密:my_database
ALTER DATABASE my_database LOG ENCRYPTION ON;
删除租户数据库的回退快照:my_database
ALTER DATABASE my_database DROP FALLBACK SNAPSHOT;
ALTER CLIENTSIDE ENCRYPTION COLUMN KEY 语句 (Encryption)
更改列加密密钥 (CEK) 以授予或删除对它的访问权限,并用以下内容填充它 加密密钥信息,以及添加或删除 CEK 版本。
添加新版本
创建加密密钥的新版本。
删除旧版本
删除所有旧版本的加密密钥。使用旧 必须使用新版本的 CEK 重新加密 CEK 的版本 在可以删除旧版本之前。
描述
当密钥管理员创建列加密密钥时(具有 CLIENTSIDE 的用户 ENCRYPTION COLUMN KEY ADMIN 权限),其他用户将无权访问此 CEK CEK 只有一个加密值。当特定客户端 安装需要访问 CEK,客户端使用 CREATE CLIENTSIDE ENCRYPTION KEYPAIR 语法。什么时候 密钥管理员使用 ADD KEYCOPY 子句,客户端驱动程序协作 使用 SAP HANA 服务器创建使用密钥加密的 CEK 副本 在语句 (ENCRYPTED WITH KEYPAIR ) 中指定并由客户端创建的对名称。关键 CEK 副本的值将添加到 SAP HANA 数据库中,从而授予对 CEK 和使用此 CEK 加密的数据到客户端安装。<keypair_name><keypair_name>
使用 DROP KEYCOPY,将从 SAP HANA 数据库中删除对 CEK 的访问。如果密钥复制 被删除属于密钥管理员,然后SAP HANA服务器确保 至少一个其他密钥管理员密钥副本(由 CKP 加密的 CEK 副本) 由密钥管理员拥有)存在于该 CEK 中。如果没有其他密钥管理员 该 CEK 存在密钥副本,则 DROP KEYCOPY 失败。此行为可确保 密钥管理员可以为 CEK 创建密钥副本,以授予对 加密数据。
当使用 CREATE CLIENTSIDE ENCRYPTION COLUMN KEY...仅标题 语句中,SAP HANA 数据库中没有 CEK 的加密值。一 空 CEK 允许客户端继续创建数据库模式,而无需 实际创建 CEK。使用 ENCRYPTED WITH KEYPAIR 语法,客户端驱动程序与 SAP HANA服务器生成新的CEK,并使用 对其进行加密,然后将其存储在SAP HANA数据库中。 填充空 CEK 后,可以将行插入到表中。{ADD | DROP} KEYCOPY 子句不用于填充空 CEK。<keypair_name><keypair_name>
ADD VERSION 子句创建现有 CEK 的新版本。然后,ALTER TABLE 子句应用新的 CEK 版本添加到加密列。<activate_clientside_encryption>
权限
此语句需要 CLIENTSIDE ENCRYPTION COLUMN KEY ADMIN 权限。
例子
以下语句为 用户密钥对。此语句允许 user1 执行 访问 CEK,从而将 CEK加密。hrapp_cek1user1_ckphrapp_cek1
ALTER CLIENTSIDE ENCRYPTION COLUMN KEY hrapp_cek1 ADD KEYCOPY ENCRYPTED WITH KEYPAIR user1_ckp;
以下语句删除 CEK 加密的密钥副本 使用密钥对。此语句阻止客户端 从访问到通过客户端密钥对。hrapp_cek1user1_ckphrapp_cek1user1_ckp
ALTER CLIENTSIDE ENCRYPTION COLUMN KEY hrapp_cek1 DROP KEYCOPY ENCRYPTED WITH KEYPAIR user1_ckp;
以下语句更改空 CEK(定义为 HEADER ONLY) 并使用 . hrapp_cek2user1_ckp
CREATE CLIENTSIDE ENCRYPTION COLUMN KEY hrapp_cek2 HEADER ONLY;
ALTER CLIENTSIDE ENCRYPTION COLUMN KEY hrapp_cek2 ENCRYPTED WITH KEYPAIR user1_ckp;
以下语句添加现有 CEK hrapp_cek3的新版本。
ALTER CLIENTSIDE ENCRYPTION COLUMN KEY hrapp_cek2 ADD NEW VERSION;
以下语句删除现有 CEK hrapp_cek3的旧版本。
ALTER CLIENTSIDE ENCRYPTION COLUMN KEY hrapp_cek2 DROP OLD VERSIONS;