1
我已經將sqlite3數據庫轉儲到.sql文件中。後來我有導入的文件是這樣的:sqlcipher如何導入sqlite3數據庫
cat databasedump.sql | sqlcipher encrypted_database
然後我打開加密的數據庫,並設置與重點:
pragma key="12345"
然後我關閉數據庫,並重新打開它,它仍然沒有加密。
如何在數據庫中加載轉儲並對其進行加密?
我已經將sqlite3數據庫轉儲到.sql文件中。後來我有導入的文件是這樣的:sqlcipher如何導入sqlite3數據庫
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;
這工作,但我怎麼能解密數據庫?通常它的'pragma key ='我的密碼';'但之後沒有解密,我只是得到以下消息:'錯誤:文件被加密或者不是數據庫'。我只看到了類似的方式...所以附加新的數據庫..解密..選擇..分離..等。有沒有辦法解密它,並直接加載它在內存中? – Shibumi