1、打开SqlServer数据库,选中要备份的数据库,【右键】选择【任务】,点击【备份】。
2、输入【数据集】名称,选择备份路径,点击【确定】就完成了数据库的备份。
3、【右键】选择【任务】,点击【还原】,选择【数据库】。
4、选择之前备份的数据库,点击【确定】。
5、至此SqlServer备份还原的操作就已完成。
mongo副本集/复制集是mongo高可用性特征之一,是有自动故障恢复功能的主要集群。由一个Primary节点和一个或多个Secondary节点组成。
复制是在多台服务器之间同步数据的过程,由一组Mongod实例(进程)组成,包含一个Primary节点和多个Secondary节点
Mongodb Driver(客户端)的所有数据都写入Primary,Secondary从Primary同步写入的数据
通过上述方式来保持复制集内所有成员存储相同的数据集,提供数据的高可用
Failover (故障转移,故障切换,故障恢复)
Redundancy(数据冗余)
避免单点,用于灾难时恢复,报表处理,提升数据可用性
读写分离,分担读压力
对用户透明的系统维护升级
主节点记录所有的变更到oplog日志
辅助节点(Secondary)复制主节点的oplog日志并且将这些日志在辅助节点进行重放(做)
各个节点之间会定期发送心跳信息,一旦主节点宕机,则触发选举一个新的主节点,剩余的辅助节点指向新的主
10s内各辅助节点无法感知主节点的存在,则开始触发选举
通常1分钟内完成主辅助节点切换,10-30s内感知主节点故障,10-30s内完成选举及切换
用户恢复数据,防止数据丢失,实现灾难恢复
人为误操作导致数据删除,程序Bug导致数据损坏等
首要复制节点,由选举产生,提供读写服务的节点,产生oplog日志
备用(辅助)复制节点,Secondary可以提供读服务,增加Secondary节点可以提供复制集的读服务能力
在故障时,备用节点可以根据设定的优先级别提升为首要节点。提升了复制集的可用性
Arbiter节点只参与投票,不能被选为Primary,并且不从Primary同步数据
Arbiter本身不存储数据,是非常轻量级的服务。
当复制集成员为偶数时,最好加入一个Arbiter节点,以提升复制集可用性
Mongodb版本3.0以上, 三台服务器均为64位
三台服务器 -------- Primary(Centos7)、 Secondary(Centos7)、 Secondary(Debian8);架设IP分别为 192.168.1.1、1.2、 1.3
三台服务器关闭防火墙 -------- systemctl stop firewalld.service
三台服务器修改mongo配置文件 -------- vi /etc/mongod.conf
侦听地址除了 localhost 外再加上服务器IP; 设置复制集名字(RepliSetName)。
开启mongod服务: mongod
三台服务器mongo各自初始化: rs.initiate()
Primary上副本集配置:
rsconf(配置名称,可随意取)={_id:"副本集名",member:[{_id:0,host:"IP:port",priority:2},{_id:1,host:"IP:port",priority:1},{_id:2,host:"IP:port",priority:1}]}
在初始化:rs.initiate(变量名,如下面的config)
Secondary上配置:
rs.slaveOk() #承认自己是Secondary
三台服务器上互相添加副本集成员:
rs.add("IP:port"), 如在Primary上 rs.add("192.168.1.2:27017"), rs.add("192.168.1.3:27017")
查看状态
rs.status()
3、rs(replication set) 常用命令:
初始化副本集 ---- rs.initiate()
mongo查看状态 ---- rs.status()
初始化副本集配置
rsconf = {_id: "rs0",
members: [{
_id: 0,
host: ":27017"}]}
rs.initiate( rsconf )
验证副本集配置 ---- rs.config()
增加副本集成员 ---- rs.add("Ip:port")
移除副本集成员 ---- rs.remove("IP:port") #此步骤在Primary上操作
改变成员变量的优先级
cfg = rs.conf()
cfg.members[0].priority = 3
cfg.members[1].priority = 1
cfg.members[2].priority = 2
rs.reconfig(cfg)
配置延迟副本集
cfg = rs.conf()
cfg.members[0].priority = 0
cfg.members[0].hidden = true
cfg.members[0].slaveDelay = 3600
rs.reconfig(cfg)
# 07/03/2017
--建立链接服务器,通过@datasrc指定数据源,适合链接其他多种数据库EXEC master.dbo.sp_addlinkedserver @server = N'Link',
@srvproduct='ms',
@provider=N'SQLNCLI',
@datasrc=N'远程ip地址,端口'
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'Link',
@useself=N'False',
@locallogin=NULL,
@rmtuser=N'用户名',
@rmtpassword='密码'
--查询远程表
select *
from [Link].远程数据库名.dbo.表
--把本地表的数据,复制到远程表
insert into [Link].远程数据库名.dbo.表(列的列表)
select 列
from 本地表
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)