Collection Contents 上一页 下一页 PDF

ASA SQL 参考

SQL 语句

CREATE ENCRYPTED FILE 语句


说明 

此语句加密高度加密的数据库、事务日志文件或 dbspace。

语法 

CREATE ENCRYPTED FILE newfile
FROM oldfile
KEY key
ALGORITHM { AES | AES_FIPS } ]

参数 

FROM    列出未加密文件的文件名。

KEY    列出赋予加密文件的密钥。

ALGORITHM    指定用来加密文件的算法。如果不指定算法,则缺省使用 AES。

用法 

此语句接受未加密的数据库、事务日志文件或 dbspace 并创建新的加密文件。一定不要加密原文件。结果文件是与原文件完全一样的副本,只是它已用指定的算法和密钥加密。

如果使用此语句对数据库进行加密,则必须使用相同的算法和密钥加密相应的事务日志文件(以及任何 dbspace),这样才能使用数据库。您不能将加密的文件和未加密的文件混在一起,也不能将使用不同算法或使用不同密钥加密的文件混在一起。

如果需要恢复的数据库是加密的,则其事务日志必须也被加密,并且仍需要恢复新数据库。

在上述过程中,事务日志文件的名称保持不变。因此,如果数据库和事务日志文件被重命名,则需要对得到的数据库运行 dblog -t 命令。

通过卸载数据库然后联合使用 -an 选项与 -ek 或 -ep 之一重装数据库,可以加密一个现有数据库或更改现有的加密密钥。也可以联合使用 CREATE ENCRYPTED FILE 语句与 CREATE DECRYPTED FILE 语句来更改加密密钥。

权限 

必须是具有 DBA 权限的用户。

在 Windows CE 上,仅支持 AES 算法。

副作用 

无。

示例  

下面的示例加密 contacts 数据库,并创建一个用 AES_FIPS 加密技术加密的名为 contacts2 的新数据库。

CREATE ENCRYPTED FILE 'contacts2.db'
FROM 'contacts.db'
KEY 'Sd8f6654*Mnn'
ALGORITHM AES_FIPS

下面的示例加密 contacts 数据库和 contacts 日志文件,并重命名这两个文件。您需要运行 dblog -ek abcd -t contacts2.log contacts.db,因为虽然日志已被重命名,但数据库文件仍指向旧的日志。

CREATE ENCRYPTED FILE 'contacts2.db'
FROM 'contacts.db'
KEY 'Sd8f6654*Mnn'
CREATE ENCRYPTED FILE 'contacts2.log'
FROM 'contacts.db'
KEY 'Te9g7765*Noo'
示例 3 

下面的示例加密 contacts 数据库和 contacts 日志文件,让原日志文件名保持不变。在这种情况下,您不需要运行 dblog,因为文件的名称未改变。

CREATE ENCRYPTED FILE 'newpath\contacts.db'
FROM 'contacts.db'
KEY 'Sd8f6654*Mnn'
CREATE ENCRYPTED FILE 'newpath\contacts.log'
FROM 'contacts.log'
KEY 'Sd8f6654*Mnn'
示例 4 

下面的示例更改了 contacts 数据库的加密密钥。

CREATE DECRYPTED FILE 'temp.db'
FROM 'contacts.db'
KEY 'oldkey'
del contacts.db
CREATE ENCRYPTED FILE 'contacts.db'
FROM 'temp.db'
KEY 'newkey'
del temp.db

Collection Contents 上一页 下一页 PDF