sqlite3 db文件在达到大小后翻转

时间:2015-02-19 07:32:57

标签: c++ database sqlite

我在C ++应用程序中使用sqlite3。应用程序有多个实例访问同一个DB。数据库文件大小增长无限,直到磁盘被填满。因此我尝试了一种机制,当sqlite3数据库文件达到特定大小时将其翻转到新文件。假设使用文件“db1.sql”。当它达到1000 KB的大小时,我想将“db1.sql”重命名为“db2.sql”并继续写入新文件“db1.sql”。如果文件不存在,sqlit3_open API将创建该文件。当“db1.sql”再次达到1000 KB时,我想覆盖“db2.sql”并继续写入新文件“db1.sql”,依此类推。阈值大小1000 KB是可配置的。复杂的部分是许多应用程序使用相同的DB文件。因此,当我这样做重命名并打开/创建新文件时,它不应该影响其他应用程序。活动DB文件的名称应始终为“db1.sql”。实现这一目标的最佳方法是什么?

0 个答案:

没有答案