有两台服务器,不在同一局域网 怎么将文件实时同步

有两台服务器,不在同一局域网 怎么将文件实时同步,第1张

回答:

双机服务器一般用ca公司surviveit,不仅可以实时同步数据,还可以主备机切换,更可以主服务器挂掉后,备服务器自动顶替其位置,具体操作如下:两台服务器安装完surviveit后,primary

server和second

server便自动出现在管理软件的managed

servers列表中。此时需要建立一个replication

task:

1选中主服务器primary

server;

2选中数据备份服务器second

server;

3选择网络速度(10m选fast,100m选very

fast);

4选择数据保护等级,一般选择full

protection(既能进行数据的实时备份,也能进行服务器的实时切换);

5从primary

server中选择需要保护的目录;

6选择primary

server中被保护目录中的文件共享;

7选择enable

intelligent

failover和detect

another

computer

or

network

device;

8选择transfer

primary

ip

address

to

the

secondary

server

on

failover,change

primary

ip

address

on

failover。

9从已建立好的replication

task中可更改数据在second

server中的备份路径;

10在replication

task的failover

actions中,分别对primary

server和second

server增加sql70

scripts;

11运行建好replication

task后的第一次数据同步,同步结束后primary

server自动处于保护状态。

追问:

这个可以让两个服务器的同时更新吗

比如说从的上传

主的也会更新吗

而不是只是主的上传

从的更新

回答:

这服务器是你们托管的还是自己维护?托管的话,不会影响速度,除非你一次性更新超大量内容,还有我想说的是,如果是托管的,为啥不双线接入或者三线接入?还得用两台服务器对两种线路的用户?如果是自己维护,三台机器,你就更新主服务器,把那两个设成从服务器,只更新主服务器后那两个就都更新了,更不会拖慢速度了风尘々紫驿

的感言:

虽然没用你的方法还是谢谢你了

呵呵

2011-03-10

  双机热备:基于共享存储与纯软件方式

  数据库双机热备有两种典型的方式,一种是比较标准的,两台服务器通过一个共享的存储设备(一般是共享的磁盘阵列或存储区域网SAN),并且安装双机软件,实现双机热备,称为共享方式。另一种方式是通过纯软件的方式,一般称为纯软件方式或镜像方式(Mirror)。

  对于共享方式,数据库放在共享的存储设备上。当一台服务器提供服务时,直接在存储设备上进行读写。而当系统切换后,另一台服务器也同样读取该存储设备上的数据。

  对于纯软件的方式,通过镜像软件,将数据可以实时复制到另一台服务器上,这样同样的数据就在两台服务器上各存在一份,如果一台服务器出现故障,可以及时切换到另一台服务器。

  纯软件方式可以在一定程度上降低成本,但它也有非常明显的缺点:

  1可靠性相对较差,两服务器间的数据实时复制是一个比较脆弱的环节。

  2一旦某台服务器出现中断,恢复后还要进行比较复杂的数据同步恢复。并且,这个时段系统处于无保护状态。

  3没有事务机制,由于其复制是在文件和磁盘层进行的,复制是否成功不会影响数据库事务操作,因此有出现数据不完整变化的情况,这个存在着相当的风险。

  因此,建议除非不得已,不要选择纯软件方案。

如何用nodejs实现客户端向服务器实时发送数据的功能

在数据层面,主要有:

Index:Elasticsearch用来存储数据的逻辑区域,它类似于关系型数据库中的db概念。一个index可以在一个或者多个shard上面,同时一个shard也可能会有多个replicas。

Document:Elasticsearch里面存储的实体数据,类似于关系数据中一个table里面的一行数据。

document由多个field组成,不同的document里面同名的field一定具有相同的类型。document里面field可以重复出现,也就是一个field会有多个值,即multivalued。

Document type:为了查询需要,一个index可能会有多种document,也就是document type,但需要注意,不同document里面同名的field一定要是相同类型的。

Mapping:存储field的相关映射信息,不同document type会有不同的mapping。

1 SQLSERVER服务器上面安装oracle客户端,配置服务命名(假设为 test)

2 在SQLSERVER服务器上面建立链接服务器,脚本如下

SQL code

SQL code-- Adding linked server:

exec sp_addlinkedserver @server = 'test' ,

@srvproduct = 'ORACLE',

@provider = 'MSDAORA',

@datasrc = 'test'

-- Adding linked server login:

exec sp_addlinkedsrvlogin @useself='false ', @rmtsrvname = 'test',

@rmtuser = 'user', --数据库用户

@rmtpassword = 'password' --密码

3 建立一个作业,通过作业调度存储过程,存储过程使用类似的语句将oracle的数据插入到sqlserver表中

SQL code

insert into sqlserver表 select from testoracle表名

4 如果要球ORACLE数据是实时增加的,并且ORACLE记录上有递增的字段,可以在SQLSERVER上面建立一个表记录上次插入的id,然后下次可以从上次的ID+1开始继续插入

SQL code

insert into sqlserver表 select from testoracle表名 where id>@id

5 防止sqlserver同步的时候oracle仍在不断的插入,每次要取一个结束ID

SQL code

select @endid=max(id) from testoracle表名

很好的问题,我说下我的想法,

腾讯有很多服务器,北京上海应该不是登录同一个服务器,但是数据库应该是同一个,用户资料这种数据应该也是采取分布式存储的(不一定是放在关系型数据库里面,腾讯这种公司现在在很好的使用云技术),有一个核心主库,各分布式服务器上的数据作为主库的实例缓存在分布式环境中,而修改在线签名这种操作,技术上认为是需要及时同步到主库的,那么上海服务器需要什么资料时,肯定需要从主库拿一次的,这时候拿到的肯定是最新的,同时主库发生了什么变更的时候可以主动发起一个PUSH操作,同步各分布式实例。总之,分布式环境下,我们可以定义同步操作的重要级别,级别高的需要迅速完成同步的,并不一定很多,所以效率上面没有问题就可以了。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 有两台服务器,不在同一局域网 怎么将文件实时同步

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情