|
|
51CTO旗下网站
|
|
移动端

公司有一台很重要SQL数据库,如何实现数据库实时同步?

客户现在有一个需求,公司有一台很重要SQL数据库,怕有一天服务器或者系统崩溃,导致所有SQL数据库数据丢失,客户想把数据库数据,通过某种方式将数库进行实时同步到另外一台服务器上,这样可以做个backup。

作者:IT小技术来源:今日头条|2019-10-08 15:54

一、客户需求

客户现在有一个需求,公司有一台很重要SQL数据库,怕有一天服务器或者系统崩溃,导致所有SQL数据库数据丢失,客户想把数据库数据,通过某种方式将数库进行实时同步到另外一台服务器上,这样可以做个backup。

那客户这个需求如何实现呢?

二、解决方案:

通过分析与研究,使用的是SQL自带的发布与订阅功能,旧的SQL Server版本是2008,新安装一个SQL Server 2014版本,通过旧SQL Serer发布,再通过SQL Server2014订阅,来同步数据库数据。

三、实现过程

3.1、发布

发布前准备:首先两个服务器之间要能相互通讯,也就是能ping命令能通。平时我们连接数据库时,经常都是用的ip登陆,但是发布的时候不能这样,必须用服务器名称。

如果在不同网段的两台数据库服务器,可以在两台服务器hosts文件中添加对应的IP地址和主机名。

在旧服务器上,打开SQL Server数据库软件,进行发布SQL数据库。

1、旧服务器上,找到复制--本地发布,右击新建发布。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

2、选择需要发布的数据库名称。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

3、选择事务发布。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

4、在此数据库中,查看表,是否都可以正常的被发布,如下图所示,有些表无法正常发布,那该怎么办?

公司有一台很重要SQL数据库,如何实现数据库实时同步?

5、发现是由于这些表中没有主键,需要给这三张表设置主键。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

6、设置主键。

公司有一台很重要SQL数据库,如何实现数据库实时同步?
公司有一台很重要SQL数据库,如何实现数据库实时同步?
公司有一台很重要SQL数据库,如何实现数据库实时同步?

8、发现还有一个表无法发布。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

9、查看原因。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

10、需要将此表中的,阻止保存要求重新创建表的更改项勾选去掉。

公司有一台很重要SQL数据库,如何实现数据库实时同步?
公司有一台很重要SQL数据库,如何实现数据库实时同步?

11、去掉后,发现此表可以正常设置主键。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

12、可以看到所有的表都可以正常发布了。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

13、下一步。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

14、选择添加。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

15、选择立即创建快照并使快照保持可用状态,以初始化订阅。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

16、选择安全设置。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

17、输入数据库的sa用户名和密码。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

18、选择下一步。这时要注意,需要将数据库的代理服务开启,和SQL browser服务开启。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

19、创建发布。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

20、新建一个发布名称。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

21、发布成功。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

22、发布的同时,要保证如下此SQL目录可读写。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

3.2、订阅

1、要新服务器上,找到SQL Server代理服务器,将其开启,自动。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

2、找到SQL Browser将其服务开启。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

3、可以Ping通发布服务器的主机名。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

4、找到复制--本地订阅。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

5、选择下一步。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

6、选择查找SQL Server发布服务器。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

7、选择发布服务器的名称,或者手动输入发布服务器名称,输入发布服务器的用户名sa,发布服务器数据库sa密码。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

8、可以查询到刚才我们发布的数据库名称。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

9、选择在发布服务器 PRD-SQL上运行所有代理。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

10、选择新建数据库。

公司有一台很重要SQL数据库,如何实现数据库实时同步?
公司有一台很重要SQL数据库,如何实现数据库实时同步?

11、新建一个数据库,来同步发布服务器中的数据库。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

12、新建数据库完成,点击下一步。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

13、选择与订阅服务器的连接。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

14、输入订阅服务器数据库sa用户名和密码。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

15、选择下一步。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

16、选择连续运行。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

17、选择立即初始化时间。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

18、选择创建订阅。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

19、选择完成。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

20、订阅创建成功。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

3.3、测试结果

1、在发布服务器上查看同步状态。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

2、可以看到正在同步数据库表。

公司有一台很重要SQL数据库,如何实现数据库实时同步?
公司有一台很重要SQL数据库,如何实现数据库实时同步?
公司有一台很重要SQL数据库,如何实现数据库实时同步?

3、同步完成后,可以查看数据库数据有多少条和订阅服务器进行对比,如果一样说明成功。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

4、在订阅服务器上,可以查看到所有的表都已经同步过来了。而且数据总条目都和发布服务器数据一样,实时数据备份成功。

当以后,发布服务器此数据库中有变动,订阅服务器数据库也会实时变动。

公司有一台很重要SQL数据库,如何实现数据库实时同步?

【编辑推荐】

  1. 精心总结--关于MySQL数据库常见的优化手段、步骤
  2. 关于数据库备份恢复方面的15个建议,值得重视
  3. 关于MySQL数据库配置优化的15条建议
  4. 小白学MySQL要多久?我整理了10多个问题的答案
  5. MySQL连接数太多应该怎么解决?
【责任编辑:华轩 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

用Python玩转excel

用Python玩转excel

让重复操作傻瓜化
共3章 | DE8UG

188人订阅学习

AI入门级算法

AI入门级算法

算法常识
共22章 | 周萝卜123

164人订阅学习

这就是5G

这就是5G

5G那些事儿
共15章 | armmay

133人订阅学习

视频课程+更多

小白轻松学MySQL大数据调优

小白轻松学MySQL大数据调优

讲师:齐毅22257人学习过

小白轻松学Redis 4.x NoSQL数据库

小白轻松学Redis 4.x NoSQL数据库

讲师:齐毅37144人学习过

基于OpenCV的精度测量项目实战

基于OpenCV的精度测量项目实战

讲师:禾路6491人学习过

读 书 +更多

非常网管——网络服务

本书使用通俗易懂的语言,通过大量的实例,从实际应用的角度出发,全面系统地介绍了网络服务操作系统平台、电子邮件系统、Web站点和FTP站点...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO官微