此语句加密高度加密的数据库、事务日志文件或 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'
下面的示例加密 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'
下面的示例更改了 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
SQL Anywhere Studio 9.0.2
版权所有 © 1989–2005 Sybase, Inc. 部分版权所有 © 2001–2005 iAnywhere Solutions, Inc. 保留所有权利。