要使用SQLite3數據庫進行數據備份,您可以使用sqlite3命令行工具或編寫一個簡單的Python腳本來完成。這里有兩種方法:
方法1:使用sqlite3命令行工具
打開命令行終端(在Windows上是命令提示符或PowerShell,在macOS和Linux上是終端)。
使用sqlite3命令連接到源數據庫文件(例如:source_db.sqlite3):
sqlite3 source_db.sqlite3
.backup命令創建一個新的數據庫文件(例如:backup_db.sqlite3):.backup backup_db.sqlite3
.exit退出SQLite命令行工具。現在,您已經成功地將源數據庫備份到了backup_db.sqlite3文件中。
方法2:使用Python腳本
首先,確保您已經安裝了Python。
創建一個名為backup_sqlite3.py的Python腳本文件。
將以下代碼復制到backup_sqlite3.py文件中:
import sqlite3
import sys
import os
def backup_sqlite3(source_db, target_db):
conn = sqlite3.connect(source_db)
cursor = conn.cursor()
cursor.execute("PRAGMA database_list")
result = cursor.fetchall()
if len(result) > 0:
for item in result:
if item[1] == 'main':
main_db = item[0]
break
else:
print("Error: Unable to find the main database.")
sys.exit(1)
conn.close()
backup_conn = sqlite3.connect(target_db)
backup_cursor = backup_conn.cursor()
backup_cursor.execute(f"CREATE TABLE IF NOT EXISTS {main_db} AS SELECT * FROM {main_db};")
backup_conn.commit()
backup_conn.close()
print(f"Backup of {source_db} to {target_db} completed successfully.")
if __name__ == "__main__":
if len(sys.argv) != 3:
print("Usage: python backup_sqlite3.py <source_db> <target_db>")
sys.exit(1)
source_db = sys.argv[1]
target_db = sys.argv[2]
if not os.path.isfile(source_db):
print(f"Error: Source database file {source_db} does not exist.")
sys.exit(1)
backup_sqlite3(source_db, target_db)
source_db.sqlite3)和目標備份數據庫文件(例如:backup_db.sqlite3):python backup_sqlite3.py source_db.sqlite3 backup_db.sqlite3
現在,您已經成功地將源數據庫備份到了backup_db.sqlite3文件中。