2009-01-05 218 views
21

讓我自己在這裏的一個小菜一碟......在一個CMS項目上工作,假設sql server 2008被選爲數據庫。那麼它不是,我們現在必須將我們所有的內容從SQL Server 2008遷移到SQL Server 2005.恢復SQL Server 2008數據庫*到* SQL Server 2005

一個簡單的備份/恢復過程產生:「RESTORE HEADERONLY異常終止(Microsoft SQL Server,Error :3241)「。

不幸的是,將數據導出到excel電子表格會產生多個OLE錯誤,我認爲這實際上是cms數據庫中的一個問題。

有沒有人有其他方法他們想推薦這項任務?在此先感謝

+0

按照ocdecio的建議抓取sql比較/數據比較工具。爲這件事情起作用。 http://stackoverflow.com/questions/413699/restore-sql-server-2008-db-to-sql-server-2005#413801。 – Kev 2009-01-05 17:58:19

回答

15

使用RedGate

tool for comparing and deploying SQL Server database contents.

You can work with live databases, backups, or SQL scripts in source control. Damaged or missing data can be restored to a single row, without the need for a full database recovery.

SQL Data Compare helps you compare and deploy changes quickly, simply, and with zero errors...

+0

SQL比較與SQL數據比較搖滾。他們的14天免費試用(如果你問得好,他們會延長)讓我從這樣的洞中走出來。 Defo在購物清單上。 – Kev 2009-01-05 17:55:53

+0

如果這節省了您一天的時間購買該軟件,請不要使用該試用版獲得商業收益。在我的最後一個角色中,我們購買了這款軟件,並且多次爲其付費。 – 2009-01-06 09:49:41

0

我只使用mysql,但你可以導出你的數據到sql語句,然後導入到sql2005?只是一個想法..

+0

啊,我嘗試過。 SQL然後昨天晚上跑了12個小時以上。數據庫不是那麼大,所以我認爲有些事情是錯誤的。 – 2009-01-05 16:50:21

1

這是不可能恢復到以前版本的SQL Server

有沒有SQL 2005的備份身邊?否則,你真的被限制在2008年導出整個數據庫,並重新導入到2005年,或者導入/導出嚮導在2008年

或依賴於第三方工具。例如紅門數據比較可以同步。在2個服務器/數據庫之間的數據

0

我遇到了類似的問題(SQL 2005到SQL 2000),並發現我碰巧有一個空白的數據庫在舊版本。我用bcp.exe來複制所有的數據。

6

使用生成腳本來創建數據庫和架構,並確保你的目標SQL Server 2005和腳本數據。

4

我剛剛遇到同樣的問題,這裏是我如何解決它。

問題是將數據庫從運行的SQL Server 2008數據庫複製到新的SQL Server 2005數據庫。

我在2008服務器上使用Management Studio編寫數據庫腳本。我只編寫了數據庫設計腳本,而不是數據。我還應該補充說,數據庫只有表和索引,所以我還沒有嘗試過這與任何聰明的對象,雖然我想不出爲什麼他們不會工作。

在2005服務器上,我手工創建了一個新數據庫,然後運行腳本來設置所有表和索引。

回到2008年服務器中的Management Studio中,我使用導出數據嚮導將數據從2008服務器導出到2005服務器。它目前正在運行,看起來很高興移動數據。

一旦所有的數據在我有幾個小東西剩下的事情 - 創建用戶和設置在2005數據庫的安全性,但所有功能於所有它看起來並不像一個不好的做法。這不是非常簡單,但它不是太費勁。

如此看來,複製數據庫嚮導將無法正常工作(我想是因爲包最終2005服務器和2005 Management Studio中不能跟2008上運行),但將數據導出嚮導是相當幸福的移動數據。只要數據庫已經存在於目標服務器上。

希望這很有用。

0

檢查此鏈接click here 您可以創建在SQL Server 2008數據庫的腳本,你可以用它的SQL Server 2005和更低版本....

9

有沒有辦法在默認情況下做到這一點。您可以在2008服務器上爲2008數據庫生成腳本,然後在2005版本上執行這些腳本。請注意,您必須手動查看腳本並刪除2008版獨有的所有部分。

另一種方法是使用第三方工具,如Red Gate或ApexSQL Diff(移動模式)和ApexSQL Data Diff(移動數據)。