【发布时间】:2018-03-27 06:52:10
【问题描述】:
对于一个网站项目,我在 Azure 上创建了一个数据库。但是我想知道如何管理备份以及如何导入或导出它们。
提前谢谢你。
【问题讨论】:
-
此站点用于编码和获取有关已发布代码 + 跟踪的帮助。请使用 StackExchange 进行一般性问题和讨论。
标签: azure-sql-database backup database-backups
对于一个网站项目,我在 Azure 上创建了一个数据库。但是我想知道如何管理备份以及如何导入或导出它们。
提前谢谢你。
【问题讨论】:
标签: azure-sql-database backup database-backups
Azure SQL 数据库提供自动备份,保留期为 7 到 35 天,具体取决于数据库的版本。但是,您无法导出这些自动备份。详细了解自动备份here。
Azure SQL 数据库还提供长期保留备份,如 here 所述,但您无法访问或下载它们。
您可以做的是将数据库从 Azure SQL 数据库导出到 Azure Blob 存储帐户作为 bacpac,然后将其下载到您的本地计算机。您可以使用门户导出数据库,但也可以使用 SqlPackage.exe 实用程序,如下所示。
SqlPackage.exe /a:Export /tf:testExport.bacpac /scs:"Data Source=apptestserver.database.windows.net;Initial Catalog=MyDB;" /ua:True /tid:"apptest.onmicrosoft.com"
您还可以使用 SQL Server Management Studio 导出数据库。详细了解如何导出数据库 here。
您可以通过导入将 bacpac 还原到 Azure SQL 数据库。您可以使用门户、PowerShell,但也可以使用 SqlPackage.exe 实用程序,如下所示:
SqlPackage.exe /a:import /tcs:"Data Source=mynewserver20170403.database.windows.net;Initial Catalog=myMigratedDatabase;User Id=ServerAdmin;Password=<change_to_your_password>" /sf:AdventureWorks2008R2.bacpac /p:DatabaseEdition=Premium /p:DatabaseServiceObjective=P6
您可以了解有关导入 bacpac here 的更多信息。
【讨论】:
如果您想在 azure 中导入导出备份,请查看 this article。
如果您想备份到您的计算机。一种可能的选择:
Tasks -> Export Data-tier application...
这将允许您获取数据库的.bacpac 文件。现在您可以像这样恢复到本地数据库服务器:
Databases文件夹->Import Data-tier application...
请注意,有些场景对您没有帮助,因为 Azure SQL 和独立 SQL 略有不同,并且某些对象在独立版本中不存在。在这种情况下,您应该使用导出/导入并且不要选择这些对象。
【讨论】: