You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

误删Azure SQL数据后,如何复制指定时间点库至新数据库?

Azure SQL数据库误删数据的时间点恢复方案
  • 可以将目标数据库的某一过去时间点副本恢复到新的Azure SQL数据库,若需要本地副本,可从这个临时库导出后导入本地SQL Server。
  • 你提到的类似CREATE DATABASE TempRestore AS COPY OF MainDb IN POINT OF TIME的语法Azure SQL不直接支持,但可通过官方工具或T-SQL命令实现等效效果。

实现方式

1. 恢复到新Azure SQL数据库

通过Azure门户操作

在Azure门户中找到原数据库,进入「备份」选项卡,选择「恢复」,指定需要恢复的时间点,输入新数据库名称(比如TempRestore),确认后即可完成恢复。

通过T-SQL命令操作

使用RESTORE DATABASE语句,需先获取对应时间点的备份文件URL(可通过Azure门户或PowerShell获取),示例语法:

RESTORE DATABASE TempRestore
FROM URL = 'https://yourstorageaccount.blob.core.windows.net/backups/MainDb_backup_202405201000.bak'
WITH
    RECOVERY,
    MOVE 'MainDb_Data' TO '/var/opt/mssql/data/TempRestore.mdf',
    MOVE 'MainDb_Log' TO '/var/opt/mssql/data/TempRestore.ldf',
    REPLACE,
    STOPAT = '2024-05-20 10:00:00' -- 替换为你需要的时间点

2. 恢复到本地数据库

  1. 先按上述方法将时间点副本恢复到临时Azure SQL数据库;
  2. 使用SqlPackage工具或Azure门户将临时库导出为BACPAC文件;
  3. 将BACPAC文件导入到本地SQL Server实例中。

关键注意事项

  • 时间点恢复仅支持在自动备份保留期内的时间点(基本/标准层默认7天,通用/业务关键层默认35天,可手动延长);
  • 恢复后的新数据库默认继承原库的服务层级和计算规格,可按需调整以降低成本;
  • 临时数据库使用完毕后建议及时删除,避免产生不必要的费用。

内容的提问来源于stack exchange,提问作者Sam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 18:22:51