2015-03-31 115 views
3

我使用SQL Server 2012,我知道如何利用bacpac of sql databaseazure portal和商店文件到blob如何從本地計算機生成bacpac文件並將其上載到Azure blob上?

如何生成從本地機器BACPAC文件,並將其上傳到Azure上的斑點?

有沒有辦法做到這一點?使用C#程序或任何實用程序?

+0

您是否檢查過DacFx框架? – 2015-03-31 08:56:32

+0

其實我試着用這個帖子'http:// www.sqlshack.com /備份sql服務器數據庫微軟azure /'但我沒有得到任何選項備份像URL前綴:(不,我有未嘗試DacFx – Neo 2015-03-31 09:01:33

+0

* SQL Management Studio 2014 *可以將數據庫導出到.bacpac文件。嘗試使用最新的管理工作室,連接到* SQL 2008服務器*並查看是否可以導出bacpac。 – 2015-03-31 09:14:35

回答

5

如果您正在尋找自動執行此您也可以直接部署到SQL Azure中,有一種方法:

1)生成使用SqlPackage.exe的.bacpac文件

例如:

「C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin\sqlpackage.exe」 
/a:Export /ssn:SourceServerName /sdn:SourceDatabaseName  
/tf:C:\DataExtraction\SourceDatabase.bacpac" 

這將產生下下的BACPAC:\ DATAEXTRACTION \ SourceDatabase.bacpac

更多信息請點擊這裏:SqlPackage.exe

2)使用上傳到BACPAC Azure存儲作爲Blob Azure PowerShell

Switch-AzureMode -Name AzureServiceManagement 
$context= New-AzureStorageContext -StorageAccountName "Storageaccountname" -StorageAccountKey "mystoragekeyhere" 

Set-AzureStorageBlobContent -Context $context -Container adventureworks -File "NameOfLocal.bacpac" -Blob "NameofBacpacInStorageContainer.bacpac" 

瞭解更多信息在此cmdlet重刑去這裏: Set-AzureStorageBlobContent

如果您需要導入以下命令將幫助您:

「C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin\sqlpackage.exe」 
/a:Import /tsn:TargetServerName /tdn:TargetDatabaseName  
/sf:C:\DataExtraction\SourceDatabase.bacpac" 

如果您希望使用sqlpackage.exe添加以下目錄到您的PATH(​​):

C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin\

+0

也許我很瘋狂,但(把這個命令放在一邊)這種方法似乎更快.... – pimbrouwers 2017-07-13 13:13:59

1

。下載並安裝SSDT tool

[Your DataBase]-> Task -> Export Data tier Application -> [Choose the localPath.bacpac] 

使用Deploy Data Tier Application to SQL Azure

+0

我想自動化並將其上載到Azure blob上? – Neo 2015-03-31 09:30:00

+0

你可以按照這個http://geekswithblogs.net/shaunxu/archive/2012/04/28/ssdt-ndash-makes-sql-azure-development-easy.aspx – sudhAnsu63 2015-03-31 09:32:39

+0

你可以使用CodeFirst,將創建所需的數據庫更改部署項目時自動執行SQL Azure。 – sudhAnsu63 2015-03-31 09:34:55

相關問題