sql-server - 将生产 Azure SQL 数据库中的数据与临时数据库同步,允许在第二秒内进行更改

标签 sql-server azure azure-sql-database devops backup

我在Azure SQL 数据库中有两个数据库,其结构几乎相同(除非修改了其中之一)。我需要将生产数据库中的数据与登台数据库同步,能够在不损害生产的情况下在登台中进行更改,除非我需要进行生产恢复(这是另一个主题)。 在没有解决方案的情况下,我希望能够在开发人员需要时使登台等于生产,是否有一种方法可以使用另一个数据库的备份来修改数据库,而无需创建新数据库(因为您将必须在应用程序中修改服务器名称)

最佳答案

我目前在我的环境中采用的流程是:

  1. 从 STAGING 和 PROD 完全相同的基线开始。您可以通过将最新备份从 PROD 环境恢复到 STAGING 环境来实现。

  2. 当 DEV 中发生更改并需要发布到 STAGING 时,请创建适当的发布脚本以应用于 STAGING。

  3. 当您需要刷新 STAGING 中的数据时,请再次将最新备份从 PROD 恢复到 STAGING。

  4. 可选:运行刷新后所需的任何暂存特定脚本。例如。如果您混淆任何数据,或更改数据以表明它是暂存环境。

  5. 在 STAGING 中运行任何尚未发布到 PROD 的发布脚本。

  6. 随着时间的推移,您在 STAGING 中使用的发布脚本应该习惯于发布到 PROD,这将有助于保持两个环境同步。

  7. 按照您的目标可接受的频率重复步骤 2、3 和 4。

我在 SQL 作业中有上述内容,因此它本质上是一个一键式过程,但我的数据库是本地 SQL Server。我还使用名为 SQL Examiner 的模式比较工具自动生成我需要的发布脚本,但不确定它是否适用于 Azure SQL 数据库。

关于sql-server - 将生产 Azure SQL 数据库中的数据与临时数据库同步,允许在第二秒内进行更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74572897/

相关文章:

WSDL 的 Azure APIM 导入

azure - 病毒扫描从 Azure Web/辅助角色上传的文件

asp.net - ImageResizer AzureReader2 插件 - 对调整大小请求的 404 响应

mysql - 查询问题从一个表选择结果到另一个表

c# - 我无法在 C# 上向 sql 数据库添加文本

node.js - 限制对 AWS SQL Server 实例的外部访问

Azure 数据工厂管道 - 将单值源查询输出存储为变量,然后在复制数据事件中使用

sql-server - 设置 IDENTITY_INSERT ON 不起作用

azure - 如何在 Azure SQL PaaS 中进行复制

mysql - Azure SQL 和 MySQL