Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
创建高度加密的数据库的解密副本,可用于创建事务日志、事务日志镜像和 dbspace 的解密副本。
CREATE DECRYPTED FILE newfile FROM oldfile KEY key
FROM 子句 列出已加密文件的文件名。
KEY 子句 列出访问加密文件所需的密钥。
当您的数据库需要恢复以及出于支持的原因需要为数据库创建解密副本时,请使用此语句。还必须使用此语句对任何与数据库相关的文件(例如事务日志、事务日志镜像或 dbspace)进行解密。
原始数据库文件必须用加密密钥高度加密。得到的文件是加密文件的相同副本,但并未加密,因此不需要加密密钥。
如果使用此语句对数据库进行解密,则相应的事务日志文件(以及任何 dbspace)也必须被解密才能使用数据库。
如果需要恢复的数据库是解密的,那么也必须解密其事务日志文件,并且仍需要恢复新数据库。在上述过程中,事务日志文件的名称保持不变。因此,如果数据库和事务日志文件被重命名,则需要对得到的数据库运行 dblog -t 命令。
无法在启用表加密的数据库上使用此语句。如果具有要解密的表,则使用 ALTER TABLE 语句的 NOT ENCRYPTED 子句来解密这些表。
对于使用 SQL Anywhere 12 或更高版本创建的数据库,ISYSCOLSTAT、ISYSUSER 和 ISYSEXTERNLOGIN 系统表将始终保持加密状态以保护数据,防止对数据库文件进行未经授权的访问。
此语句在过程、触发器、事件或批处理中不受支持。
DBA 权限。
无。
SQL/2008 服务商扩充。
下面的示例对 contacts 数据库进行解密,并新建一个名为 contacts2 的解密数据库。
CREATE DECRYPTED FILE 'contacts2.db' FROM 'contacts.db' KEY 'Sd8f6654*Mnn';