Navicat 為 SQLite 數據庫設置密碼指南
在 SQLite 中設置密碼實際上是通過加密實現的,Navicat 使用 SQLCipher 擴展來提供數據庫加密功能。以下是詳細的操作方法和注意事項:
在 Navicat 中設置密碼(加密數據庫)
步驟 1:啟用加密
在 Navicat 中打開 SQLite 連接
右鍵單擊數據庫 → 選擇 “編輯連接”
轉到 “高級” 選項卡
在 “加密” 部分:
加密類型:選擇 SQLCipher
輸入密碼:設置強密碼(至少12個字符,含大小寫字母、數字和符號)
確認密碼:再次輸入相同密碼
步驟 2:應用加密
點擊 “確定” 保存設置
Navicat 會提示:“此操作將加密數據庫文件”
點擊 “確定” 開始加密過程
等待加密完成(時間取決于數據庫大小)
使用加密數據庫的注意事項
- 密碼管理
每次連接加密數據庫都需要輸入密碼
考慮使用 Navicat 的 “密碼管理器” 存儲密碼
重要: 忘記密碼 = 永久丟失數據(無恢復方法)
- 跨平臺兼容性
加密數據庫只能在支持 SQLCipher 的工具中使用:
? Navicat 所有版本
? DB Browser for SQLite (SQLCipher 版本)
? 使用 SQLCipher 庫的應用程序
? 標準 SQLite 工具無法打開
- 加密強度選項
在 “編輯連接” → “高級” 中可調整:
密鑰派生迭代次數(推薦 ≥ 64000)
加密算法(默認 AES-256,最安全)
頁面大小(通常保持默認)
在其他工具中使用加密數據庫
方法 1:使用 DB Browser (SQLCipher 版)
下載支持 SQLCipher 的 DB Browser
打開數據庫時選擇 “SQLCipher” 加密類型
輸入密碼訪問數據庫
方法 2:使用 SQLCipher 命令行
bash
安裝 SQLCipher
sudo apt install sqlcipher # Ubuntu/Debian
brew install sqlcipher # macOS
打開加密數據庫
sqlcipher encrypted.db
輸入密碼
PRAGMA key = ‘your_strong_password’;
驗證是否成功
.schema
方法 3:在 Python 中使用
python
from pysqlcipher3 import dbapi2 as sqlite
conn = sqlite.connect(‘encrypted.db’)
cursor = conn.cursor()
設置密碼
cursor.execute(“PRAGMA key=‘your_strong_password’”)
執行查詢
cursor.execute(“SELECT * FROM your_table”)
print(cursor.fetchall())
移除密碼(解密數據庫)
在 Navicat 中打開加密數據庫
右鍵數據庫 → “編輯連接” → “高級”
加密類型改為 “無”
點擊 “確定” 并輸入當前密碼
Navicat 會將數據庫解密為標準 SQLite 格式
重要安全建議
備份優先:加密前務必備份原始數據庫
密碼強度:使用密碼管理器生成和存儲強密碼
兼容性測試:在目標環境測試加密數據庫能否打開
性能影響:加密會增加約5-15%的性能開銷
版本一致性:確保所有環境使用相同 SQLCipher 版本
?? 警告:數據庫加密后,沒有密碼將無法恢復數據!請務必將密碼存儲在安全的地方。
通過以上步驟,您可以安全地為 SQLite 數據庫添加密碼保護,確保敏感數據的安全。