连接多个DB的问题

MSCLUB 2011-09-07 08:02:40
我们的客户想在Production环境以外,再增加一个Preprod环境。 两个环境都用Oracle DB。 Preprod的数据要和Production保持一致。

连接DB的客户程序使用的是.NET。问一下,除了改写应用程序,让每次写操作都操作两遍(更新两个DB以外) 还有没有其它的方法?

是不是有类似Proxy的接口或产品,可以让应用程序只把写请求提交给Proxy,由Proxy再转发给不同的DB, 并保持两个DB始终同步。

似乎有同学有类似经验,可以提供一下建议?
...全文
126 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
如果倒霉,你用了没有自动复制的功能 --> 如果倒霉,你用了没有自动复制功能数据库

正规的数据库系统,全都应该有这个动态产生数据库副本的功能(就是随着数据库被更新,副本也同步更新,可能延迟一两分钟而已),而且这个其实是非常重要的功能,只不过许多人不注意罢了。副本不仅仅可以用来做后台的统计计算等等耗时的操作(因为这不会锁住记录),而且可以随时用来再生成更多的副本。
  • 打赏
  • 举报
回复
最好不要再应用程序这个层面做这个动作,换句话说可以说是多余揽祸上身。首先看看你的数据库系统本身有没有自动同步复制的功能,我想这基本上都可以得到,那么你的程序顶多是用一条命令启用这个功能(或者让数据库的配置参数自己去控制)。如果倒霉,你用了没有自动复制的功能,那么干脆从磁盘镜像等等角度去处理吧。

我使用的数据库全都有自动、动态写副本的功能,包括一些纯粹的NoSql数据库也是如此。
sanjiawan 2011-09-07
  • 打赏
  • 举报
回复
是要两个服务器的数据库同步吗 我有过这样的经历 先将两个服务器建立远程连接 对一个数据库进行增删改操作 然后对进行操作的数据库写触发器 触发另一个数据库的记录 达到不同服务器数据库同步的目的
阿妈的乖女儿 2011-09-07
  • 打赏
  • 举报
回复
好像可以定义一个类,将两个连接的db都放在一起,然后可以调用这个类。呵呵,好像是的,
ruanwei1987 2011-09-07
  • 打赏
  • 举报
回复
两个数据库一致。
可以用同步的方法,
不过这么好像不及时
你说这个方法,挺好的,帮你顶下,等解答

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧