首页 新闻 搜索 专区 学院

急急急!请求各位帮助!一个网站两台服务器,都能访问,并数据同步。

1
悬赏园豆:80 [已解决问题] 解决于 2014-10-08 21:29

我这有两台不在一起的服务器,两个IP 地址,相同的网站,正常情况下 要实现
负载均衡,如果有一台 服务器访问不了了,需要跳转到另一个 地址去。然后数据库SQL Server怎么同步。

.net

我这本地挂个web程序,当服务器数据库 链接不上的时候,就链接本地数据库(本地数据库是同步服务器或订阅服务器数据的),等到 网络通了,自动把 本地修改或删除、新增的数据同步到服务器上。这个怎么实现。

 

hy31337的主页 hy31337 | 初学一级 | 园豆:123
提问于:2014-07-14 13:36
< >
分享
最佳答案
0

Windows NLB 不行吗?

收获园豆:30
Launcher | 高人七级 |园豆:45045 | 2014-07-14 13:42

数据和 程序怎么同步?

hy31337 | 园豆:123 (初学一级) | 2014-07-14 13:44

@hy31337: 啥类型的数据? 程序?是指的编译后的二进制文件和页面吗?

Launcher | 园豆:45045 (高人七级) | 2014-07-14 13:54

@Launcher: SQL server 表数据,程序就是.net web 程序!

hy31337 | 园豆:123 (初学一级) | 2014-07-14 14:02

@hy31337: SQL Server Always on 或者数据库镜像功能。web 程序部署可以采用文件同步机制,也可以在发布时同时向两台机器发布。

Launcher | 园豆:45045 (高人七级) | 2014-07-14 14:08

@Launcher: 请问详细该怎么实现。

hy31337 | 园豆:123 (初学一级) | 2014-07-14 14:10

@hy31337: sql server 的帮助文档上有。

Launcher | 园豆:45045 (高人七级) | 2014-07-14 14:12

@Launcher: web 程序部署可以采用文件同步机制该怎么做?

hy31337 | 园豆:123 (初学一级) | 2014-07-14 14:50
Launcher | 园豆:45045 (高人七级) | 2014-07-14 14:55

@Launcher: 高手,我可以使用 百度云 同步吗? 在服务器上都安装 百度云, 我先把程序传到 百度云上。

hy31337 | 园豆:123 (初学一级) | 2014-07-14 14:57

@hy31337: 可以吧!你可以测试下。

Launcher | 园豆:45045 (高人七级) | 2014-07-14 15:01

@Launcher:  SQL Server Always on 要2012 版才有吗? 这个不熟悉!没太看懂意思。

hy31337 | 园豆:123 (初学一级) | 2014-07-14 15:59

@hy31337: 是的,你也可以用镜像功能,MSDN 上说镜像功能在未来的 Sql Server 版本中可能会取消,使用 Always on 代替。

Launcher | 园豆:45045 (高人七级) | 2014-07-15 09:16

@Launcher: 用镜像的话 两台服务器的数据库能 同时进行 增删改 不冲突吗?

hy31337 | 园豆:123 (初学一级) | 2014-07-17 09:09

@hy31337: http://www.xzbu.com/8/view-4448555.htm

SqlServer Replication 这个只是数据同步,不涉及故障转移功能。

Launcher | 园豆:45045 (高人七级) | 2014-07-17 09:43

@Launcher: 我用SqlServer Replication做数据同步,如果服务器出现故障,那网站也访问不了,这个用CDN做可以吧!

hy31337 | 园豆:123 (初学一级) | 2014-07-18 09:52

@hy31337: CDN 不是干这个的。

Launcher | 园豆:45045 (高人七级) | 2014-07-18 09:57
其他回答(5)
0

两台站点做负载,一台数据库服务器

收获园豆:5
Y2zz | 园豆:393 (菜鸟二级) | 2014-07-14 13:38

现在只有两台服务器!万一数据库服务器挂了,那还是不能使用了。

支持(0) 反对(0) hy31337 | 园豆:123 (初学一级) | 2014-07-14 13:40

@hy31337: 服务器太少,搭不了

支持(0) 反对(0) Y2zz | 园豆:393 (菜鸟二级) | 2014-07-14 13:47

@hy31337: 实在不行你就把SQLSERVER 做镜像,主数据库挂了 切换到镜像去

支持(0) 反对(0) Y2zz | 园豆:393 (菜鸟二级) | 2014-07-14 13:50

@Y2zz: 嗯,没办法只有两台服务器。SQLSERVER 做镜像 是怎么个原理。

支持(0) 反对(0) hy31337 | 园豆:123 (初学一级) | 2014-07-14 13:52

@hy31337: 主从端,两台服务器站点做负载,其中一台同时也是主数据库,另一台是从,如果还有一台见证服务器就可以自动切换,不然只能手动切换

支持(0) 反对(0) Y2zz | 园豆:393 (菜鸟二级) | 2014-07-14 13:54

@hy31337: 具体见MSDN http://msdn.microsoft.com/zh-cn/library/ms189852.aspx

支持(0) 反对(0) Y2zz | 园豆:393 (菜鸟二级) | 2014-07-14 13:55

@Y2zz: 由于SQL Server是一个实例多个数据库的产品,数据库镜像技术是基于数据库级别的,因此每次主数据库新增数据库都必须为备机增加数据库并且为新增的数据库建立镜像关系。,跨数据库事务和分布式事务均不支持数据库镜像。这个不太好吧!

支持(0) 反对(0) hy31337 | 园豆:123 (初学一级) | 2014-07-14 13:55

@hy31337: 别告诉我你想让备份机真的跟主服务器一模一样。。。。

支持(0) 反对(0) Y2zz | 园豆:393 (菜鸟二级) | 2014-07-14 13:59

@Y2zz: 想是这么想的,但就是因为这样实现起来很难,有没有办法让 两个数据库 数据 增加  删除的 命令 自动交互 同步。

支持(0) 反对(0) hy31337 | 园豆:123 (初学一级) | 2014-07-14 14:00
0

简单点类类似数据库读写分离,也就是数据库实时同步,主数据库挂了,把数据库连接字符串改成连接副数据库的连接字符串

收获园豆:10
烧点饭 | 园豆:68 (初学一级) | 2014-07-14 14:19

你说的读写分离是?

支持(0) 反对(0) hy31337 | 园豆:123 (初学一级) | 2014-07-14 14:52

@hy31337: 类似于读写分离,但不是,就是数据库发布--订阅模式,主数据库发布,副数据库来订阅主数据库的数据,实现数据实时同步,当主数据库挂了,把指向数据库连接字符串改成指向副数据库的连接字符串就好了,但是不智能,需要手动更改!

支持(0) 反对(0) 烧点饭 | 园豆:68 (初学一级) | 2014-07-14 17:37

@烧点饭: 这个有点麻烦额! 如果是订阅模式,副服务器的数据库,增加修改删除不了删除吧!

支持(0) 反对(0) hy31337 | 园豆:123 (初学一级) | 2014-07-14 18:40

@hy31337:  是的,如果主数据库挂了,使用副数据库作为临时数据库,这时副数据库更改影响不到主数据库了,这时就应该马上进行人工修复了,然后把这台副的变出主数据库,原先主数据库变成副数据库,这样数据库又会自动同步了,当然这比较麻烦,但是发生挂掉的可能性应该不高,不可能一天挂一次吧,要是这样还是升级服务器吧!

支持(0) 反对(0) 烧点饭 | 园豆:68 (初学一级) | 2014-07-14 18:58

@烧点饭: 请问这个是怎么切换主副?

支持(0) 反对(0) hy31337 | 园豆:123 (初学一级) | 2014-07-15 12:23

@hy31337: 没有很好的办法,手工建立主副数据库关系,原先A是发布服务器,B是订阅服务器,有一天A挂了,数据都写到B里了,等A重新工作后,删除原先的关系,把B当作发布服务器,A当作订阅服务器,这时A会自动从B同步宕机时期内没有的数据。当然,这也比较麻烦!

至于如何进行发布--订阅的设置,可以参考:

http://www.cnblogs.com/daizhj/archive/2009/11/18/1605293.html

支持(0) 反对(0) 烧点饭 | 园豆:68 (初学一级) | 2014-07-16 10:56
0

办法之一:两台用USB SQLserver 同步线连接起来,写时同时完成本地和远程写,就可以了。你也可以自己用socket做。QQ:1561724180

收获园豆:10
LiuKaiFa | 园豆:1491 (小虾三级) | 2014-07-14 16:30

亲,这个能实现吗?

支持(0) 反对(0) hy31337 | 园豆:123 (初学一级) | 2014-07-14 18:11
0

一般来讲至少2台机子,每个机子上有ip端口,用于数据库服务器。

1,2台机子+共享存储的话,买用盘阵即可。

2,2台机子,分别用自己机子上的硬盘,这就需要使用双机同步技术。两台机子的表空间文件随时同步。

老的sqlserver,是没有双机技术的,或者不完善。这时候一般都用双机软件来实现。

最著名的就是rose。它是收费软件,4000---5000元一套,它实现了1同步数据库文件,2心跳+高可用。

免费的好像linux中多。

 

收获园豆:10
PowerShell免费软件 | 园豆:332 (菜鸟二级) | 2014-07-14 21:15
0

http://msdn.microsoft.com/en-us/library/ms151198.aspx SqlServer Replication 只能帮到这里了。

收获园豆:15
EricPan | 园豆:217 (菜鸟二级) | 2014-07-16 00:59

SQL Server Replication 这个技术更高层啊!怎么实现?

支持(0) 反对(0) hy31337 | 园豆:123 (初学一级) | 2014-07-17 09:13
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册