回答
sqlite3命令行工具功能.backup
dot command。
您可以连接到数据库:
sqlite3 my_database.sq3
,并运行备份点命令:
.backup backup_file.sq3
而是到数据库的交互连接的,你也可以做备份和然后关闭连接
sqlite3 my_database.sq3 ".backup 'backup_file.sq3'"
无论哪种方式,结果是副本名为backup_file.sq3
的数据库my_database.sq3
。
这与定期进行文件复制有所不同,因为它负责处理当前在数据库中工作的任何用户。在数据库上设置了适当的锁,因此备份是专门完成的。
try {
final String inFileName = "/data/data/your app package/databases/db";
File dbFile = new File(inFileName);
FileInputStream fis = new FileInputStream(dbFile);
String path = Environment.getExternalStorageDirectory().getAbsolutePath() + "/CALC/Backup";
File dir = new File(path);
if (!dir.exists()) dir.mkdirs();
String outFileName = path + "/filename"; // output file name
// Open the empty db as the output stream
OutputStream output = new FileOutputStream(outFileName);
// Transfer bytes from the inputfile to the outputfile
byte[] buffer = new byte[1024];
int length;
while ((length = fis.read(buffer)) > 0) {
output.write(buffer, 0, length);
}
Toast.makeText(getActivity(), "Backup Successfully", 2).show();
// Close the streams
output.flush();
output.close();
fis.close();
}
catch (Exception e) {
e.printStackTrace();
}
对于实时增量备份(仅复制修改的页面),您可以使用litereplica。
它实现了单向数据库复制,支持时间点恢复,所以如果一个记录或表被意外删除,我们可以将数据库(主数据库或副本数据库)还原到问题出现之前的某个时间点。
备份在每次事务处理后都会更新,因此如果主机发生故障,您在另一个端点中有更新的备份。
在主机侧的应用程序将打开使用修改的URI分贝,就像这样:
“file:/path/to/main.db?replica=master&slave=tcp://my.server.ip:1234”
而且你必须有一个运行的应用程序,以接收更新的副本/备份的一面。这个程序将打开副本DB使用URI是这样的:
“file:/path/to/copy.db?replica=slave&bind=tcp://0.0.0.0:1234”
要启用即时点时间恢复,我们必须添加一些参数到URI的文件名,例如:
&pitr=on&pitr_limit=200M
它可以在主数据库中启用,如在备份/副本中一样。
并启用加密(数据库和通信),我们添加类似:
&cipher=chacha20&key=your_key_here
是的.backup最好的方式。
sqlite3 my_database .backup > my_database.back
,你也可以尝试使用.dump,转储数据库中的SQL文本格式,如果指定的表,只转储表匹配LIKE模式表。
sqlite3 my_database .dump > my_database.back
在SQLite 3.8.2上,'.backup'不能像上面显示的那样工作(“在.backup上缺少FILENAME参数”) – 2017-10-18 09:11:10
- 1. 如何备份SQLite数据库?
- 2. 如何备份sqlite数据库?
- 3. 自动备份SQLite数据库
- 4. Sqlite数据库备份和加密
- 5. sqlite备份内存数据库C++
- 6. 备份后如何恢复SQLite数据库的Android
- 7. 如何将Android上的SQLite数据库备份/恢复到Dropbox
- 8. 数据库备份
- 9. 备份数据库
- 10. 备份数据库
- 11. 将SQLite数据库复制到存储设备进行备份
- 12. 如何从NSIS备份MySQL数据库
- 13. 如何备份Firebird数据库?
- 14. Firestore新数据库 - 如何备份
- 15. 如何备份Meteor Mongo数据库?
- 16. 如何备份MySQL数据库?
- 17. 如何备份MySQL数据库
- 18. 如何从sqlexpress备份数据库
- 19. 如何从ServerGrid.com备份数据库?
- 20. 如何在wordpress中备份数据库?
- 21. 如何从Java备份mysql数据库?
- 22. 如何备份Hive数据库
- 23. 如何使用XMLRPC备份数据库?
- 24. 如何让用户备份数据库
- 25. 如何备份数据库备份每天在SQL Server 2005中
- 26. Android备份/恢复:如何备份内部数据库?
- 27. 内容数据库备份
- 28. ASP.net MVC数据库备份
- 29. Drupal数据库备份
- 30. WordPress的数据库备份
[SQLite的有一个API为这个(http://sqlite.org/backup.html) – 2014-09-04 23:47:37
什么语言和驱动程序是您使用访问数据库? – 2014-09-05 07:28:52
我使用PHP和PDO扩展 – thelolcat 2014-09-05 21:46:21