2015-03-02 71 views
1

我有一個使用本地數據庫(SDF)用於其在Azure上託管一把umbraco一個項目,我想將數據從本地數據庫複製到一個新的,這將在Azure上的SQL被託管,那麼我想更新連接字符串以使用該數據庫,是否有可能?或者我需要從頭開始重做網站。是否可以將sdf umbraco數據庫轉換爲Azure SQL?

我試圖尋找答案,但我似乎無法找到答案。 我已經下載了使用webmatrix的網站,但數據庫沒有下載整個項目:/

+0

看到http://stackoverflow.com/questions/13121280 /着 - 複製 - umbrao-SDF-從功能的Web服務器。一旦您下載了SQL Compact數據庫,您應該可以使用SQL Management Studio將數據庫表腳本編寫到Azure SQL中,然後更新web.config文件以指向新的數據庫。 – Claies 2015-03-02 09:59:14

+0

我做到了,然後我將它轉換爲SQL,添加了鍵和所有內容,但是當我將它上傳到Azure時,我得到了很多空引用錯誤。我做錯了什麼...... – geekybastard 2015-03-02 16:20:29

+0

最後,我使用webmatrix創建了一個新的umbraco項目,使用sql數據庫創建了一個新的模板站點,並從舊的sdf中執行了sql查詢。數據庫中,然後我將它遷移到azure並且它工作 – geekybastard 2015-04-07 15:06:16

回答

0

最後,我創建了一個新的umbraco項目使用webmatrix,創建一個新的模板網站與SQL數據庫並執行來自舊的sdf的sql查詢。在該數據庫中的數據庫,然後我遷移它提供關於集羣鍵一些修改Azure和它的工作

1

是的,如果你使用這個出口可以生成數據庫的腳本:

http://exportsqlce.codeplex.com/releases/view/116839

ExportSqlCe40.exe "Data Source=Umbraco.sdf;" export.sql sqlite 
Initializing.... 
Generating the tables.... 
Generating the data.... 
Generating the indexes.... 
Sent script to output file(s) : export.sql in 760 ms 

必須添加一個額外的行對登錄表添加一個索引

CREATE CLUSTERED INDEX umbracoUserLogins_Index ON umbracoUserLogins (contextID); 

我所做的是解決好順序爲umbracoNode表生成的記錄。您必須確保帶有鍵-1的項目首先被插入,並且它不會標記我必須手動執行的標識列。

一旦你跑這對一個藍色的SQL Server實例,更改連接字符串,以確保您更新提供程序字符串來System.Data.SqlClient的

<add name="umbracoDbDSN" providerName="System.Data.SqlClient" connectionString="[azureconnectionstring]" /> 
+0

對於Umbraco 7,不需要手動添加任何索引,只需要將* SDF *遷移到Azure SQL數據庫時執行導出就非常好。 – 2016-01-10 10:09:38

相關問題