快速,持续,稳定,傻瓜式
支持Mysql,Sqlserver数据同步

同步MS SQL Server数据库

在线QQ客服:1922638

专业的SQL Server、MySQL数据库同步软件

在本文中,我们将研究如何使用dbForge Schema Compare for SQL Server在不同服务器之间同步SQL Server数据库更改。

SQL Server数据库更改同步的一般意义

使用数据库时,我们经常面临同步更改的任务。

即使公司仅使用一个生产环境,也仍然需要至少一个其他环境来进行测试。这就需要将更改从测试环境转移到生产环境。

随着公司的发展,服务器和虚拟环境的数量也在增加,并且同步过程变得更加复杂。

通常,我们可以按如下所示安排更改的传输和同步步骤:

  1. 在开发环境之间
  2. 从开发环境到测试环境
  3. 在测试环境之间
  4. 从测试环境到预生产环境
  5. 从预生产环境到生产环境,能够快速回滚更改

有多种工具可用于同步环境之间的更改,例如:

  1. Visual Studio比较器
  2. SQL Server集成服务
  3. Devart的dbForge Schema SQL Server 比较

在本文中,我们将研究如何使用dbForge Schema Compare for SQL Server在不同服务器之间同步SQL Server数据库更改。

SQL Server架构同步

我们将借助Devart的dbForge Studio for SQL Server中嵌入的“ 架构比较工具”来完成数据库架构同步的任务。提供免费试用。为简单起见,让我们来看看源服务器和目标服务器。

在此示例中,我们将使用SRV数据库,该数据库用于管理MS SQL Server RDBM。可以出于任何目的自由访问此数据库,因此您可以在此处下载:

https://github.com/jobgemws/Projects-MS-SQL-Server-DBA/tree/master/SRV

建立连接

打开dbForge Studio for SQL Server之后,您需要转到“数据库同步”选项卡并通过单击“新建连接”按钮来创建新连接:

连接设置窗口将打开,您应在其中输入必要的信息以连接到MS SQL Server实例(源服务器)。如您所见,除了“ MS SQL Server”,“ Windows”和“ Active Directory”身份验证外,“ MFA身份验证”选项现在可用。填写所有必填字段后,单击“测试连接”按钮以测试连接:

建立连接后,将显示以下对话框:

按“确定” —首先在此框中,然后在连接设置窗口中。

现在应该添加一个新的连接:

以类似的方式,我们需要连接到所有必需的MS SQL Server实例(在我们的示例中,这将通过创建与目标服务器的连接来实现)。

设置比较过程

要调整数据库架构比较过程,请按“新建架构比较”:

将出现一个具有模式比较设置的窗口。

我们需要在“源和目标”选项卡左窗格的“源”窗格中指定以下信息:

  1. 类型
  2. 连接
  3. 源数据库

在右侧的“目标”窗格中,我们将指定:

  1. 类型
  2. 连接
  3. 目标数据库

请记住,“数据库”不是唯一的可访问类型。如果需要,您还可以选择“脚本文件夹”,“快照”,“源代码控制”或“备份”。但是,在这种情况下,我们将选择“数据库”类型。

在当前选项卡中指定所有必需的设置之后,请按“下一步”继续进行下一步,以调整数据库架构同步过程。

如果要比较两个最初相同的数据库,则可以单击“比较”,立即进行比较过程。

如果需要,可以随时访问任何选项卡-只需单击窗口左窗格中的相应元素。

您也可以通过单击窗口左下方的“保存命令行”按钮将当前设置另存为.bat文件。

在大多数情况下,当在两个最初相同的数据库之间执行更改时,在此阶段按“比较”即可完成工作。但是,要探索该工具的全部功能,我们将按“下一步:”

您可以在“选项”标签中调整各种设置,也可以仅将其保留为默认状态:

您可以在“架构映射”选项卡中按名称设置架构映射:

可以在“表映射”选项卡中设置表和列映射:

“对象过滤器”选项卡允许您设置要比较的对象。您也可以随时返回前面的任何步骤。

比较数据库架构

要启动数据库架构比较过程,请单击“比较:”

数据库模式比较设置窗口将关闭,并显示带有比较过程进度栏的窗口:

After the process is finished, take a look at the window. You can change the comparison settings by clicking “Edit Comparison” in the top left corner of the screen. To the right of this button, you can see a circle with an arrow icon — it’s a refresh button that will start the MS SQL Server schema comparison process again when being clicked. Also, slightly below, you can find all the servers that were registered earlier:

The “File” option in the main menu allows you to save the schema comparison settings as a .scomp file.

Adjusting Synchronization Settings

Now, let’s look at the window’s central top section. Here, you can choose the objects that need to be synchronized by selecting the corresponding checkboxes. Objects from the source are on the left side, while those from the target are on the right. Below, you can see the code of these objects placed in a similar manner. The comparison objects are divided into 4 groups, with the number of objects in each of these groups being accordingly counted.

In this case, we are viewing the code of a specific table, which is located both in the source and in the target. That’s why this object is located in the “Different” group:

When this object is chosen, its code will be transferred from the left side to the right while the database schemas are synchronized for the target.

在这里,我们正在查看仅存在于源代码中的表示形式的代码。这就是为什么将此对象放在“仅在源代码中”部分中,并且在屏幕右侧看不到任何代码的原因:

选择此类对象后,将为目标生成用于创建该对象的代码。

在以下情况下,我们正在查看仅存在于目标中的表示形式的代码。因此,此对象位于“仅在目标中”部分,并且在屏幕的左侧没有可见的代码:

选择此类对象后,将为目标生成用于删除该对象的代码。

接下来,开始数据库模式比较过程,您需要单击以下屏幕截图中以红色突出显示的按钮之一:

在“输出”选项卡中,您需要指定如何执行同步过程。在此处选择的最常见选项是将脚本内部保存在dbForge Studio for SQL Server中或将其保存到文件中。在这种情况下,我们需要前一种选择。强烈建议您在调整同步过程时仔细检查以下选项卡顺序:

在“选项”选项卡中,可以为数据库架构同步过程设置各种选项。

通常,需要清除“数据库备份”部分中的所有选项。

在“事务”部分中,选择了“使用单个事务”和“将事务隔离级别设置为SERIALIZABLE”选项。这有助于避免仅部分应用更改的情况,即,启用这些选项后,更改将完全应用或根本不会应用:

“摘要”选项卡总结并显示最终的同步设置。如果此时需要进行任何更改,则可以返回到前面的任何步骤。

请记住,数据库模式同步设置可以另存为.bat文件。您可以通过点击屏幕左下方的“保存命令行”按钮来执行此操作。

生成同步脚本

要开始生成数据库架构同步脚本,请按“同步:”

脚本将生成并显示在新窗口中:

该脚本是我们需要将数据库架构更改从源转移到目标的代码。它可以针对目标服务器执行,也可以另存为文件供以后使用。通常,无论如何都要保存该脚本-这使我们可以在同一数据库的多个不同服务器上同时运行该脚本。您可以通过使用SSMS中已注册的服务器组,同时将结果脚本发送到选定组中的所有服务器来执行此操作:

同步结束后,所有先前选择的对象应从模式比较窗口中消失:

结论

如您所见,dbForge Studio for SQL Server允许快速生成数据库架构同步脚本。与SSIS和Visual Studio比较器相比,适用于SQL Server的dbForge Studio更快,更易于使用,例如,在设置调整过程中所需的单击次数更少。

相关推荐

咨询软件
 
QQ在线咨询
售前咨询热线
QQ1922638