Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 按计划还原Azure SQL数据库_Sql Server_Azure_Azure Sql Database - Fatal编程技术网

Sql server 按计划还原Azure SQL数据库

Sql server 按计划还原Azure SQL数据库,sql-server,azure,azure-sql-database,Sql Server,Azure,Azure Sql Database,每周一次,我们需要运行一个Azure SQL数据库的还原,以使其替换现有数据库。换句话说,每周一次,我们需要将Azure_DB_2完全替换为Azure_DB_1(通过还原),但保留被替换数据库的名称,即Azure_DB_2 因为Azure SQL Server不支持使用替换进行还原,所以我必须首先临时重命名Azure_DB_2。为了实现这一点,我在本地SQL Server上设置了一个代理作业,首先将Azure_DB_2重命名为Azure_DB_2a。然后我要做的是将Azure_DB_1恢复为Az

每周一次,我们需要运行一个Azure SQL数据库的还原,以使其替换现有数据库。换句话说,每周一次,我们需要将Azure_DB_2完全替换为Azure_DB_1(通过还原),但保留被替换数据库的名称,即Azure_DB_2

因为Azure SQL Server不支持使用替换进行还原,所以我必须首先临时重命名Azure_DB_2。为了实现这一点,我在本地SQL Server上设置了一个代理作业,首先将Azure_DB_2重命名为Azure_DB_2a。然后我要做的是将Azure_DB_1恢复为Azure_DB_2。作为最后一步,我将删除表Azure_DB_2a

这是中间的一步,将Azure_DB_1恢复为Azure_DB_2,我对如何实现这一点有点困惑。在Azure门户中很容易做到这一点,但这并不能帮助我进行自动调度


如果可能的话,将其作为代理作业中的一个步骤添加会很好,但是如果我阅读正确,我似乎只能通过Powershell脚本还原Azure SQL数据库,而不能在SSM中使用T-SQL?理想情况下,最好的解决方案是将整个流程包含在一个代理作业中。有人可以帮助T-SQL语法完成Azure恢复吗

根据Dan Guzman的建议,我添加了一个Powershell脚本作为代理作业的步骤之一。所有这些都可以很好地工作。

Azure SQL数据库中没有T-SQL
BACKUP
RESTORE
。您是否在SQL代理作业中尝试过Powershell脚本步骤?啊,那么PS脚本可以用于代理作业?好吧,如果是这样的话,我想我能做到!是的,SQL Server代理支持PS脚本。您需要安装Azure cmdlet:。非常感谢您的建议。