数据库高可用性——SQL Server 2005数据库复制简单图解
本鸟给大家浅谈一下SQL 2005数据库的复制过程,那么为什么要进行复制呢?数据库复制是指:将表格或数据库的数据复制到另一个表格中或数据库中,利用数据库复制技术可以把数据库全部内容完整的复制到公司的各个系统中去(也可以选择部分数据),当使用SQL Server复制技术时,数据的复制时自动完成的。需要提的是,数据库复制不是什么新技术,早在SQL Server6.0中就有了。利用复制,即使服务器位于不同的地理区域,也可以将数据移动到不同的服务器上。
数据库复制将涉及发布服务器,分发服务器和订阅服务器,这三种服务器可以再不同的服务器上,也可部署在同一服务器。SQL数据复制包括有快照复制,事务复制,合并复制。今天我给大家说说快照复制,快照复制为订阅者提供了自主权最大,但是却付出了数据时间延长的代价,快照复制取文章的完整副本,通过对其他SQL Server使用BCP文件(就是我们说的存储由大容量复制实用工具或同步创建的大容量复制数据的文件。)具体可见:http://baike.baidu.com/view/684693.html?tp=8_01和对类似Oracle的其他数据源使用的txt文件方式,将此副本复制给订阅者。快照复制使用两个代理实现数据的移动;快照代理(Snapshot Agent)取给定时间点的数据,为发送做准备,分发代理(Distribution Agent)将快照和事物从发布者移动到订阅者(Subscriber)。理论先到这里,简单介绍一下环境;Server1为发布服务器,Server2为订阅服务器,它们之间要传输的数据是Server1的db1数据库中的员工表(yg表)实验拓扑如下所示:
一:前期查看
查看两个服务器的计算机名和数据库名,不一样那就得统一计算机名,具体命令下面会有
查看Server1的计算机名
查看服务器名称
统一与计算机名称,具体命令:
if serverproperty('servername') <> @@servername
begin
declare @server sysname
set @server = @@servername
exec sp_dropserver @server = @server
set @server = cast(serverproperty('servername') as sysname)
exec sp_addserver @server = @server , @local = 'LOCAL'
end
与Server1一样,Server2也查看服务器名称,并且统一计算机名
改完之后重启一下数据库服务
我们再来重新看一下计算机名和库名统一了没
启动SQL代理
在数据库db1中建立一个员工表(yg表)并且插入一条员工的记录
二:建立发布服务器
在库中的——复制——本地发布(右键)
发布向导
将Server1 dufei作为数据库发布服务器,指定本机作为发布服务器(默认设置)
启动计算机是启动SQL代理(这样是不是很方便啊)
指定存放快照的目录
选择要发布的数据库(我们指定的是db1为发布库)
选择发布的类型——快照发布
选择想要发布的表。我们创建的是yg表
添加筛选器,实验环境我就省了,直接skip
出现指定何时创建快照以及何时运行快照。我更改为3分钟一次运行(我是实验环境下可以快点)
设置运行快照的服务器账户
创建发布~~
给这个发布起个名,便于记忆
创建成功,需要检查一下一些服务是否启动
发布服务器已经搞定,下面我们要进行订阅服务器的设置
三:设定订阅服务器
同发布服务器一样,到要发布的服务器我们这里是Server2,复制——本地订阅——新建订阅
出现了向导,点击下一步进行
指定订阅服务器
选择要订阅的数据库
选择分发代理的位置
选择订阅库
设置分发代理安全性。
指定代理运行计划
马上就要成功了,在耐心等等
完成订阅~~~~
四:进行Server1和 Server2的测试
在Server1上插入两条李四和王五的记录
过上一会儿我们进行查看Server2的db1数据库
实验很成功,是不是很实用?现在数据库作为安全的第一要任还是值得我们这样去利用的,这也是数据库高可用性的又一表现。。。
数据库高可用性——SQL Server 2005数据库复制简单图解相关推荐
- 烂泥:SQL Server 2005数据库备份与恢复
本文首发于烂泥行天下. 服务器的迁移,因为业务使用的数据库是SQL Server 2005,所以就要首先对数据库进行备份. 备份可以分为手动备份和自动备份,我们先来介绍手动备份. 打开SQL Serv ...
- SQL Server 2005数据库日志文件损坏的情况下如何恢复数据库
在某些偶然的情况下,会引起SQL Server 2005数据库日志文件的损坏,比如:硬件故障.计算机非正常重启或关机. 当SQL Server 2005数据库日志文件损坏时,可能会出现以下情况: 1. ...
- Microsoft SQL Server 2005数据库安装
Microsoft SQL Server 2005数据库,电脑里原有的mssql2000已经不适用了,到网上寻找SQL Server 2005简体中文开发版的下载地址,一开始下载了个学习版的expre ...
- Eclipse如何连接SQL Server 2005数据库
做管理系统当然少不了经常与数据库打交道,在网上搜了很多数据库版本都不小,大的有好几个G的,小的也有几百兆的,我这可怜的内存,最终找了个精简版中的精简版的Sql server2005,只有80几兆,本来 ...
- SQL Server 2005数据库快照
SQL Server 2005数据库快照 -------------------------------------------创建数据库DemoDB create database DemoDB o ...
- 王老师讲解:SQL Server 2005数据库nolock的使用【来自Aisino_BBS】
前两天去安徽航天信息解决A6系统的性能问题,去之前进销存项目组研发人员小苏和小卢把他们认为性能 有问题的SQL已经发给了我,我把优化方法提交给了他们.本以为到那之后会非常轻松,但还是有些插曲在其中. ...
- 数据库入门教程(SQL Server 2005)----数据库是如何查询数据的
数据库入门教程(SQL Server 2005)----数据库是如何查询数据的----查询:逻辑顺序 1.计算列 //以scott数据库中的emp表为例-----where可译为查找,其本质是在进行表 ...
- SQL SERVER 2005数据库镜像搭建
SQL SERVER 2005数据库镜像搭建 一 概述 数据库镜像是SQL SERVER 2005用于提高数据库可用性的新技术.数据库镜像将事务日志记录直接从一台服务器传输到另一台服务器,并且能够在出 ...
- SQL Server 2005 数据库邮件 使用要点
1 利用SQL Server 2005数据库邮件,首先启用数据库邮件服务, 如下:打开SQL Server"配置工具"中的"外围应用配置器",选择"功 ...
最新文章
- SVN错误:SVN Working copy XXX is too old
- stm32 USART接收总线空闲中断--USART_IT_IDLE
- 项目管理一般知识:单个项目的管理过程
- 为 Neutron 准备物理基础设施(II) - 每天5分钟玩转 OpenStack(76)
- python无实际意义的语句_没有学不会的python--认识简单的数据类型
- Java中Filter的理解
- directui 3d界面引擎_美术设计师浅谈AR/VR中3D建模设计的工具、挑战与区别
- 借助拳王虚拟项目公社,自动发货系统,卖虚拟教程产品,实现全自动化赚钱的秘密
- 报错:/BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit_Sim/UIKit-3512.29.5/UITableView.m:7943解决方法
- Java 利用泛型实现折半查找法
- 一些有趣的 CSS 魔法和布局(下)(结尾有岗位内推哦~)
- 移形换影 - 短视频色彩特效背后的故事
- Linux crontab 定时任务详解
- 验证性因子分析(一)
- 协同工作平台功能说明书
- 区分map和fileter
- NoSQL数据库简单学习
- 高精度加法(C语言实现)
- 【C语言】小游戏系列——扫雷(内含详细过程)
- 玩客云退出链克计划后还是会下载缓存垃圾,程序员教你如何彻底绝育玩客云老母鸡
热门文章
- 5月14日 游戏闯关,
- EPSON机器人_SPEL+语言
- java代码下划线是啥意思,在这个Java代码中,下划线实际上做了什么?
- stm32qspi内存映射_stm32 QSPI内存映射模式
- python程序设计梁勇 百度网盘_20194220 2019-2020-2 《Python程序设计》实验二报告
- C++报错无效的预处理命令include_无废话--Mac OS, VS Code 搭建c/c++基本开发环境
- 点云数据的类型主要分为_点云学习在自动驾驶中的研究概述
- Python中曲率与弯曲的转换_Python中曲面曲率的Matlab等价
- 添加打印机还显示脱机_打印机总是显示脱机无法打印的解决办法
- 怎样实现两个线程共享一个集合_面试高频考察点:几种线程安全的Map解析