sqlcipher如何导入sqlite3数据库

时间:2015-08-19 15:48:49

标签: database encryption sqlite sqlcipher

我已将sqlite3数据库转储到.sql文件中。之后我导入了这样的文件:

cat databasedump.sql | sqlcipher encrypted_database

然后我打开了加密数据库,并将密钥设置为:

pragma key="12345"

然后我关闭数据库并重新打开它,它仍未加密。

如何在数据库中加载转储并对其进行加密?

2 个答案:

答案 0 :(得分:1)

$ sqlcipher plaintext.db
sqlite> ATTACH DATABASE 'encrypted.db' AS encrypted KEY 'my password';
sqlite> SELECT sqlcipher_export('encrypted');
sqlite> DETACH DATABASE encrypted;

答案 1 :(得分:1)

$ ./sqlcipher encrypted.db
sqlite> PRAGMA key = 'my password';
sqlite> ATTACH DATABASE 'plaintext.db' AS plaintext KEY '';  -- empty key will disable encryption`
sqlite> SELECT sqlcipher_export('plaintext');
sqlite> DETACH DATABASE plaintext;