還原sql server 2000資料庫的坑,不同版本資料庫
標題: Microsoft SQL Server Management Studio
------------------------------
附加資料庫 對於 伺服器“XXXX”失敗。 (Microsoft.SqlServer.Smo)
------------------------------
其他資訊:
執行 Transact-SQL 語句或批處理時發生了異常。 (Microsoft.SqlServer.ConnectionInfo)
------------------------------
無法升級資料庫 'XXXDB',因為此版本的 SQL Server 不支援該資料庫的非釋出版本(539)。
不能開啟與此版本的 sqlservr.exe 不相容的資料庫。必須重新建立該資料庫。
無法開啟新資料庫 'XXXDB'。CREATE DATABASE 中止。 (Microsoft SQL Server,錯誤: 950)
------------------------------
還原資料庫的時候遇到如上問題,發現是因為將sql server 2000的備份檔案,在sql server2014版本上還原的結果。
經過檢索得知:原來539 是Sql Server2000資料庫的內部版本號,也就是說要附加的資料庫檔案是由Sql Server 2000建立的,但是我們知道Sql Server 2014 資料庫是不相容Sql Server 2000資料庫的。
檢視sql server的內部版本號
SELECT DATABASEPROPERTYEX('MASTER','VERSION');
要解決這個問題,需要藉助 sql server 2005或sql server 2008.
方法一:
如果電腦裡安裝了SQL2005或Sql server 2008的話,也可以先用SQL2005或Sql server 2008直接還原SQL2000的bak檔案,
然後在SQL2005或Sql Server 2008下備份後生成X.bak備份集,最後可以直接用SQL2008的SSMS還原,
或者是附加資料庫,附加方法同下面操作相同。
方法二:(mdf檔案也需要先借助sql server 2008以下版本還原。)
1.如果沒有就先將bak檔案用sql2000還原後就在C:\Program Files\Microsoft SQL Server 下面的一個data檔案裡就有了。
記得要同時考出兩個檔案x.mdf和x.ldf。
2,將檔案的屬性取消只讀屬性,然後確定。
3,開啟SSMS後連線好伺服器,然後附加資料庫,選中mdf檔案,記得mdf檔案必須和ldf檔案放在同一個位置, 否則可能會失敗。
4,最後一步就是點確定執行,只要沒有報錯就是成功了,重啟電腦後開啟ssms看見資料庫裡多了個剛還原的資料庫。
注意:
-
Sql server 2014 要還原Sql server2000的資料庫,必須透過 Sql server 2005 或 Sql server 2008做中介,
先轉一次,再備份,再到Sql server 2014上面還原。
-
將sql server2000的備份資料還原到sql server 2008中關鍵是一定不要建立一個新的資料庫檔案(還原會出錯),
而是直接還原的時候在目標資料庫處給待還原的資料庫起個名字就可以了!
-
直接將sqlserver2000的備份還原到sqlserver2014是不行的,你需要一個sqlserver2008來做中轉。
-
將sqlserver2000的資料還原到sqlserver2008,再將sqlserver2008的備份還原到sqlserver2014。
-
2008到2014,操作和2000到2008一樣,只是使用的bak檔案不同。
參考文獻:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69903557/viewspace-2752109/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 如何建立和還原SQL Server 2000資料庫?SQLServer資料庫
- 如何將SQL Server 2000備份的資料庫檔案還原(升級)為SQL Server 2005或更高版本的資料庫?SQLServer資料庫
- 如何建立和還原SQL Server 2005資料庫?SQLServer資料庫
- 詳解SQL Server 2012資料庫備份與還原的教程SQLServer資料庫
- 資料庫映象 (SQL Server)資料庫SQLServer
- SQL Server資料庫安全SQLServer資料庫
- Sql Server 資料庫學習-常用資料庫 物件SQLServer資料庫物件
- 【資料庫資料恢復】Sql Server資料庫資料恢復案例資料庫資料恢復SQLServer
- 【資料庫學習】資料庫平臺:mysql,sql server資料庫MySqlServer
- Blazor使用sql server 資料庫BlazorSQLServer資料庫
- SQL Server資料庫巡檢SQLServer資料庫
- sql server 2005資料庫快照SQLServer資料庫
- SQL Server收縮資料庫SQLServer資料庫
- sql server 資料庫收縮SQLServer資料庫
- SQL Server資料庫遷移SQLServer資料庫
- 管理SQL Server資料庫安全SQLServer資料庫
- 如何將Azure SQL 資料庫還原到本地資料庫例項中SQL資料庫
- Oracle DBLink跨資料庫訪問SQL server資料同步 踩坑實錄Oracle資料庫SQLServer
- 【資料庫資料恢復】sql server資料庫連線失效的資料恢復案例資料庫資料恢復SQLServer
- SQL Server 跨資料庫查詢SQLServer資料庫
- 資料庫映象 (SQL Server)操作模式資料庫SQLServer模式
- 將 SQL Server 資料庫還原到某個時點(完整恢復模式)SQLServer資料庫模式
- SQL Server資料庫還原過程記錄,bak檔案+mdf檔案SQLServer資料庫
- SQL Server實戰四:查詢資料庫的資料SQLServer資料庫
- SQL Server資料庫恢復,SQL Server資料恢復,SQL Server資料誤刪除恢復工具SQLRescueSQLServer資料庫資料恢復
- 織夢資料庫_織夢還原資料庫_織夢資料庫很卡資料庫
- 資料庫資料恢復—附加資料庫錯誤823的SQL Server資料恢復案例資料庫資料恢復SQLServer
- 【資料庫資料恢復】SQL Server資料庫磁碟空間不足的資料恢復案例資料庫資料恢復SQLServer
- 【資料庫資料恢復】透過資料頁恢復Sql Server資料庫資料的過程資料庫資料恢復SQLServer
- SQL Server 2000/2005/2008刪除或壓縮資料庫日誌的方法SQLServer資料庫
- Sqlserver資料庫使用 .bak 檔案還原資料庫SQLServer資料庫
- SQL Server2019資料庫備份與還原指令碼,資料庫可批量備份SQLServer資料庫指令碼
- 【資料庫資料恢復】Sql Server資料庫檔案丟失的資料恢復過程資料庫資料恢復SQLServer
- 不同資料庫SQL語法差異資料庫SQL
- java 資料庫程式設計(一)JDBC連線Sql Server資料庫Java資料庫程式設計JDBCSQLServer
- 通過SQL Server資料庫映象保護虛擬資料庫ICSQLServer資料庫
- SQL Server無法刪除資料庫 "xxx",因為該資料庫當前正在使用(如何刪除一個Sql Server資料庫)SQLServer資料庫
- SQL Server 資料庫基本記錄(一)SQLServer資料庫