sqlcipher如何导入一个sqlite3数据库

sqlcipher how to import a sqlite3 database

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

cat databasedump.sql | sqlcipher encrypted_database

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

pragma key="12345"

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

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

$ sqlcipher plaintext.db
sqlite> ATTACH DATABASE 'encrypted.db' AS encrypted KEY 'my password';
sqlite> SELECT sqlcipher_export('encrypted');
sqlite> DETACH DATABASE encrypted;
$ ./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;