Tag: 数据库复制

使用git仓库作为数据库后端

我正在做一个处理结构化文档数据库的项目。 我有一个类别树(〜1000个类别,每个级别最多〜50个类别),每个类别包含数千个(最多约10000个)结构化文档。 每个文档都是几千字节的数据(我更喜欢YAML,但也可能是JSON或XML)。 这个系统的用户执行几种types的操作: 通过ID检索这些文件 通过内部的一些结构化属性来search文档 编辑文档(即添加/删除/重命名/合并); 每个编辑操作都应该logging下来,并附带一些注释 查看logging的特定文档更改的历史logging(包括查看谁更改了文档,何时更改以及为什么更改文档,获取更早的版本 – 如果需要,可能还原为这一版本) 当然,传统的解决scheme是使用某种文档数据库(比如CouchDB或者Mongo)来解决这个问题 – 然而,这个版本控制(历史)的东西引起了我一个疯狂的想法 – 为什么我不应该使用git仓库这个应用程序的数据库后端? 乍一看,可以这样解决: category =目录,document =文件 通过ID获取文档=>更改目录+读取工作副本中的文件 用编辑注释编辑文档=>由各种用户进行提交+存储提交消息 历史=>正常的git日志和旧的交易的检索 search=>这是一个稍微棘手的部分,我想这将需要一个类别定期导出到关系数据库索引的列,我们将允许search 这个解决scheme还有其他常见的缺陷吗? 有没有人试图实现这样的后端(即任何stream行的框架 – RoR,node.js,Django,CakePHP)? 这个解决scheme是否对性能或可靠性有任何可能的影响 – 也就是说,git会比传统的数据库解决scheme慢得多,否则就会有可扩展性/可靠性的缺陷? 我认为,推送/拉对方存储库的这种服务器集群应该相当健壮和可靠。 基本上,告诉我, 如果这个解决scheme将工作, 为什么会或不会做?

如果Master和Slave有不同的数据库备份Mysql复制,如何重新同步Mysql DB?

Mysql Server1正在作为MASTER运行。 Mysql Server2作为SLAVE运行。 现在数据库复制正在发生从MASTER到SLAVE 。 Server2将从networking中删除,并在1天后重新连接。 在这之后,主站和从站的数据库就会出现不匹配。 如何恢复数据库再次同步恢复数据库采取从主到从也没有解决问题?