方法跨多个服务器复制sqlite数据库
我正在开发一个分布式应用程序,我有一个SQLite数据库,必须在分布式服务器之间共享。 如果我在serverA中,并更改sqlite行,则此更改必须立即在其他服务器中进行,但如果服务器脱机,然后又联机,则必须更新与其他服务器相同的所有信息 我正在尝试用小型SQLite数据库开发HA服务 我正在考虑MongoDB或RejectionDB之类的东西,因为复制工作正常,而且我已经将数据独立于服务器在线 是否有一个库或其他SQL方法来在服务器之间共享数据方法跨多个服务器复制sqlite数据库,sqlite,replication,distributed-computing,high-availability,rethinkdb,Sqlite,Replication,Distributed Computing,High Availability,Rethinkdb,我正在开发一个分布式应用程序,我有一个SQLite数据库,必须在分布式服务器之间共享。 如果我在serverA中,并更改sqlite行,则此更改必须立即在其他服务器中进行,但如果服务器脱机,然后又联机,则必须更新与其他服务器相同的所有信息 我正在尝试用小型SQLite数据库开发HA服务 我正在考虑MongoDB或RejectionDB之类的东西,因为复制工作正常,而且我已经将数据独立于服务器在线 是否有一个库或其他SQL方法来在服务器之间共享数据 提前感谢。您可以通过嵌入应用程序来同步SQLit
提前感谢。您可以通过嵌入应用程序来同步SQLite数据库。它支持偶尔连接的客户端,因此当服务器联机时,它将捕获更改并同步这些更改。它支持多种不同的数据库平台,可以用作库或独立服务。您也可以使用,它支持SQLite以及其他一些数据库类型。我使用Raft共识协议复制我的SQLite数据库。您可以在此处找到系统: 以下是一些选项: : 它支持使用单个主机(可写节点)和一个或多个副本(只读节点)对SQLite3数据库进行主从复制 如果设备脱机后又联机,则辅助/从属数据库将以增量方式更新为主/主数据库 : 它实现了多主机复制,因此我们可以在任何节点中写入数据库,即使设备处于脱机状态 在这两种情况下,我们使用修改后的URI打开数据库,如下所示: “file:/path/to/app.db?replica=master&bind=tcp://0.0.0.0:4444” “文件:/path/to/app.db?副本=主副本和绑定=tcp://0.0.0.0:4444” : 基于区块链,它具有最高级别的安全性。存储不可变的关系数据,以低资源使用率的分布式一致性作为安全保障
披露:我是这些解决方案的作者有没有办法同步不同的文件托管SQLite数据库?显然,它只在非常有限的条件下支持SQLite(例如使用Delphi?!)没有考虑竞争条件或其他类型的冲突?这对多对一有效吗?这意味着我有多个源(相同的布局/表格)到一个从机?不,它与一个主机一起工作。它不会将来自多个数据源的数据合并到一个数据库中,但您可以为每个数据源保留一个单独的副本?