两台不相连的服务器(内网和外网),数据同步,表结构一模一样

两台完全不能互通的服务器,怎么通过C#实现数据的引出 引入呢,两张表的结果一模一样。谢谢

可以先导出数据到文件,然后再导入,也可以通过程序同时连接两台服务器根据内容比较同步

因为可能涉及到增删改操作,如果是两张单表,判断比较容易,如果涉及关系表就比较复杂了,得先处理主表数据再处理从表数据

如果能利用数据库本身的快照及增量备份功能,同步起来就相对简单

简单来说,数据同步就是一个查询,导出文件
一个读取文件,插入数据
和基本的数据库的增删改查没有什么不同。

关键在于,如何处理冲突,第一是所谓冲突就是两个表中各自有一条主键相同的数据,内容不同,是谁覆盖谁,或者是合并两条记录。
第二是两个表中只有一方有一条数据,是插入对方还是删除己方。

为了解决第一种冲突的问题,你需要精确记录每条记录的操作时间,并且两个服务器的时间要精确同步,让新的覆盖旧的
为了解决第二个问题,可以使用伪删除,也就是说用一个字段表示它是否是删除的数据,当需要删除的时候,将这个字段置1,而不是真的删除。
这样可以把问题二转换为问题一。

除了冲突的问题,还有事务完整性的问题,简单来说,就是当有读取-计算-写回操作的时候,一定要把这三者放在一个事务中,不允许在这个操作做了一半的情况下同步,避免程序读取到脏数据。

那得看你第三方机器啥样了,首先你必须得有一台和源想通,和目标也想通的机器吧,没有的话,想都别想,本地也可以,你自己的电脑也可以。建议的话,如果是想同的数据库,你就可以直接把存储文件拿出来放在目标位置就行了,不同数据库可能得转换一下,你可以自己写代码转也可以借助工具转。