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

网友投稿 1059 2023-05-12

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

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

一、客户需求

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

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

二、解决方案:

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

三、实现过程

3.1、发布

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

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

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

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

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

3、选择事务发布。

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

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

6、设置主键。

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

9、查看原因。

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

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

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

13、下一步。

14、选择添加。

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

16、选择安全设置。

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

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

19、创建发布。

20、新建一个发布名称。

21、发布成功。

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

3.2、订阅

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

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

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

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

5、选择下一步。

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

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

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

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

10、选择新建数据库。

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

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

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

15、选择下一步。

16、选择连续运行。

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

18、选择创建订阅。

19、选择完成。

20、订阅创建成功。

3.3、测试结果

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

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

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

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

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

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:如何用慢查询找到 Redis 的性能瓶颈?
下一篇:MySQL如何优化大分页查询?
相关文章