我不确定如何从Azure中的另一个数据库创建数据库以用作测试/阶段数据库。好像Azure门户中的“复制”按钮已从我在线阅读的旧教程中消失了。
我创建了一个数据库,该数据库将用作生产数据库。现在,我想创建一个完全相同的数据库,每天凌晨我想将生产数据库的表,数据等复制到副本中,因为它是一个完全相同的副本,所以我早上可以进来并从测试/阶段(复制的)数据库中进行工作,并进行更改(添加数据,删除数据,更改表等),然后在准备好更新生产数据库时进行修改。
是否有任何好的教程或其他方法可以实现这一目标?
有哪些处方方法可以做到这一点?
我应该在我的计算机上有一些本地副本,还是应该在Azure中有两个数据库(产品,测试)?
这里的任何建议将不胜感激!
答案 0 :(得分:1)
您想每天在生产数据库和测试/阶段数据库之间同步数据。 从生产数据库获取数据,然后在test / stage数据库中进行测试,然后再次更新到生产数据库。我说的对吗?
Azure SQL数据库Data Sync可以帮助您实现这一目标。
摘要:
数据同步在需要跨多个Azure SQL数据库或SQL Server数据库保持最新数据的情况下很有用。以下是数据同步的主要用例:
数据同步支持同步方向可以是集线器到成员,或成员到集线器,或两者都有。
您可以在Azure SQL数据库中创建数据库,并使用相同的架构创建本地数据库(出于成本考虑)。使用Azure SQL数据库数据同步以手动或自动方式在生产db和本地db之间同步数据。
关于如何创建数据同步,请参考以下官方教程:Tutorial: Set up SQL Data Sync between Azure SQL Database and SQL Server on-premises
希望这个家伙
答案 1 :(得分:0)
您可以在Azure SQL数据库上有两个数据库。一个是您的生产数据库,另一个是您的测试/阶段数据库。您可以使用Azure Automation和PowerShell在需要的时候(每天,每周一次等)刷新(删除/创建)测试/阶段数据库
1。检查COPY数据库是否已存在-如果存在则将其删除
Get-AzureRmSqlDatabase -ResourceGroupName $ResourceGroupName -ServerName $SqlServerName -DatabaseName $databaseCopyName
Remove-AzureRmSqlDatabase -ResourceGroupName $ResourceGroupName -ServerName $SqlServerName
-DatabaseName $databaseCopyName `
-Force
2。创建COPY数据库
New-AzureRmSqlDatabaseCopy -ResourceGroupName rg-resourcegroupname -ServerName sql-servername
-Tags @{key="value"} -DatabaseName sqldb-databasename
-CopyResourceGroupName rg-resourcegroupname -CopyServerName sql-servername
-CopyDatabaseName sqldb-databasename-copy