the*_*cat 82 database sqlite backup
这样做的正确方法是什么?我只是复制.sq3文件?
如果网站上有用户并且正在复制文件时正在编写文件怎么办?
Goo*_*gie 137
sqlite3命令行工具使用.backupdot命令.
您可以使用以下命令连接到数据库:
sqlite3 my_database.sq3
Run Code Online (Sandbox Code Playgroud)
并使用以下命令运行backup dot命令:
.backup backup_file.sq3
Run Code Online (Sandbox Code Playgroud)
您也可以进行备份,然后关闭连接,而不是与数据库的交互连接
sqlite3 my_database.sq3 ".backup 'backup_file.sq3'"
Run Code Online (Sandbox Code Playgroud)
无论哪种方式,结果都是以backup_file.sq3数据库命名的副本my_database.sq3.
它与定期文件复制不同,因为它会处理当前正在处理数据库的任何用户.在数据库上设置了正确的锁,因此备份是专门完成的.
Lav*_*ham 13
.backup 是最好的方法。
sqlite3 my_database .backup my_database.back
Run Code Online (Sandbox Code Playgroud)
您也可以尝试 .dump 命令,它使您能够将整个数据库或表转储到文本文件中。如果指定了 TABLE,则仅转储与 LIKE 模式 TABLE 匹配的表。
sqlite3 my_database .dump > my_database.back
Run Code Online (Sandbox Code Playgroud)
使用转储和存储制作存档副本的好方法,稍后重建数据库。
sqlite3 my_database .dump | gzip -c > my_database.dump.gz
zcat my_database.dump.gz | sqlite3 my_database
Run Code Online (Sandbox Code Playgroud)
还要检查这个问题SQLite3 .backup 和 .dump 命令会锁定数据库吗?
对于 SQLite 的流式复制,请查看Litestream。
与使用 sqlite3-backup 命令相比,这是自动的、增量的。
例如,如果您需要从备份恢复,则数据将比每小时定期备份的数据更新得多。
| 归档时间: |
|
| 查看次数: |
45550 次 |
| 最近记录: |