SQLServer 数据库 实时同步数据、定时同步数据库、发布 订阅服务;保姆级教程,非常详细。文章详细的介绍了数据库安装、账户设置方式、角色权限、映射、映射权限、文件夹设置方式、数据库同步、数据库管理设置方式、发布方式、订阅方式、实时同步、同步合并、安全设置、发布状态、代理服务、推送订阅、发布服务器、订阅服务器, 以及 遇到的网络相关错误、特定实例错误、订阅服务器和发布服务器连接异常问题、发布项目异常、添加项目异常、实时传输不成功等等异常问题,还包括测试和卸载相关内容。
好几年前作者在公司项目中因为数据很重要 该单位安全程度也高 所以需要定时或者不定时的同步数据库数据做备份,所以研究了SQL Server数据库的备份同步功能,而且该功能也已经正式在项目中运行好几年了,本文每个步骤都非常详细,部分内容有打码,教程也相对完善。
本文作者原创,请勿复制、拷贝、爬贴、转载。
SQLServer 实时同步、发布、订阅目录
1 安装环境
2 进行数据库的发布操作
2.1 登陆SSMS管理工具
2.2 建立全新账号
2.2.1 SSMS->安全性->登录名->右键新建用户名
2.2.2 服务器角色选择public和sysadmin
2.2.3 用户映射选择需要发布的数据库 选择数据库权限
2.3 设置共享文件夹
2.3.1 进入D盘新建一个文件夹(名字自拟在订阅服务器请建立相同名字文件夹)
2.3.2 右键该文件夹->属性->共享->添加->将计算机所有用户设置为共享
2.4 启动代理服务
2.4.1 控制面板->管理工具
编辑
2.4.2 管理工具->服务
2.4.3 服务->代理服务->启动
2.5 附加数据库或者创建一个数据库
2.5.1 附加数据库
2.5.2 创建数据库
2.6 点击本地发布进行新建发布
2.6.1 点击复制->本地发布->新建发布
2.6.2 发布的数据库
2.6.3 选择合并发布
2.6.4 2008服务器
2.6.5 2008服务器
2.6.6 实时合并同步
2.6.7 排除表中字段
2.6.8 创建快照 更改同步间隔
2.6.9 调整同步间隔
2.6.10 确认内容
2.6.11 安全设置
2.6.12 创建发布
2.6.13 发布名称
2.6.14 完成发布
2.6.15 发布状态(每次发布 会在本地共享文件夹产生详细文件)
3 进行数据库订阅操作
3.1 登陆SSMS管理工具
3.2 建立与发布服务器使用相同的用户名
3.2.1 SSMS->安全性->登录名->右键新建用户名
3.2.2 服务器角色选择public和sysadmin
3.2.3 用户映射选择需要发布的数据库 选择数据库权限
3.3 设置共享文件夹
3.3.1 进入D盘新建一个文件夹(名字自拟与发布服务器共享文件夹相同)
3.3.2 右键该文件夹->属性->共享->添加->将计算机所有用户设置为共享
3.4 启动代理服务
3.4.1 控制面板->管理工具
3.4.2 管理工具->服务
3.4.3 服务->代理服务->启动
3.5 建立或者附加和发布服务器相同的数据库(需要与发布服务器数据库相同)
3.5.1 附加数据库
3.5.2 创建数据库
3.6 点击本地订阅新建订阅
3.6.1 点击复制->本地订阅->新建订阅
3.6.2 查找发布服务器
3.6.3 输入发布服务器名称、登录名、密码
3.6.4 选择数据库发布
3.6.5 推送订阅
3.6.6 订阅数据库是否一致
3.6.7 订阅连接
3.6.8 连续运行
3.6.9 初始化时间
3.6.10 订阅类型
3.6.11 创建订阅
3.6.12 完成订阅
4 异常情况以及解决方案
4.1 在与SQL Server建立连接时出现与网络相关的或特定于实例的错误
4.1.1 错误提示
4.1.2 解决方法
4.2 订阅数据库SSMS工具连接发布服务器无法成功
4.3 发布项目出错
4.3.1 如果在添加项目发生错误
4.3.2 添加项目发生错误
4.4 实时传输不成功
5 测试、卸载
5.1 查看发布端内容
5.1.1 共享文件夹 可以看到每次共享文件夹的时间
5.1.2 每次发布都可以通过查看共享文件夹 或者 查看同步状态看到
5.2 查看订阅端内容
5.3 订阅数据库更改数据
5.4 发布数据库更改数据
5.5 卸载发布、订阅 (在发布数据库进行操作)
安装SQLSERVER2008 R2企业版本(其他版本发布订阅功能不支持)。
使用代理账户->输入第2步新建的用户 (发布、订阅新建的用户请保持一致)
如果选择生成脚本文件 则请重新选择脚本文件放置的位置
选择一致账户
SQLServer 管理器--〉DMS协议--〉TCP\IP--〉属性--〉协议: 全部侦听-〉是 已启用-〉是--〉IP地址 IP3 地址-〉127.0.0.1 TCP动态端口-〉0 TCP端口-〉(不需要更改) 活动-〉是 已启用-〉否
右键订阅 可以观察到 订阅端 在一直同步 或者发送数据
订阅数据库更改数据之后 会标记更改内容等待发布数据库进行合并数据
发布数据库更改数据库内容会在自定义的间隔时间开始对 发布订阅数据库的合并 (实时同步支持最少间隔30秒合并一次数据库)
关闭双方服务,删除完成后启动 -> 在发布端 右键发布数据库下的订阅 删除