Sql2008數據庫轉到sql2005
這個問題耽誤了一天時間,從網上找了好多方法,終於可以搞定了。現在把我收集的方法給大家分享一下。建議先使用第四個方法,可能是數據庫太大了,前三個方法我的都沒有成功,第四個方法雖然也有失敗的,但總算轉換過去了。
解決方法一:腳本生成(笨方法)sql08導出的腳本在05下兼容性不行,執行的時候會報錯。
1、 點擊“開始 > 程序 > Microsoft Sql Server 2008 > SQL Server Management Studio”
2、 在出現的“連接到數據庫服務器”對話框,服務器類型選“數據庫引擎”,服務器名稱選擇本機的SQL Server(一般是主機名/SQL服務器),點擊下拉框可以找到,身份驗證選“Windows 身份驗證”(一般本地SQL Server都是這種驗證,如果選“SQL Server身份驗證”,需要用戶名及密碼,互聯網上的數據庫是這種身份驗證,主機服務提供商會提供用戶名及密碼)
3、 SSMS界面出來,在對象資源管理器中的“數據庫”目錄中查找你要轉換的數據庫,如果沒有,右擊“數據庫”目錄,在出來的快捷菜單中點擊“附加...”,新出現一個對話窗口,點擊右邊窗格中的“添加...”按鈕,找到你要轉換的數據庫,點擊“確定”
4、 在要轉換的數據庫上右擊,出現的快捷菜單中點擊“任務 > 生成腳本”,在“腳本向導”中點擊“下一步”,選中你要轉換的數據庫(如果前邊已經選中,這次就是選中狀態),勾選下部的“為所選數據庫的所有對象編寫腳本”。
5、 點擊下一步,現在進入配置的最關鍵階段:
由於生成的腳本最后是在主機提供商已經建好的數據庫中生成表,所以注意按照如下的配置進行:
編寫數據的腳本:True (因為有用的數據要一並生成)
編寫Use DataBase的腳本:False
編寫創建數據庫的腳本:False (主機提供商已經有數據庫,這里只生成表,不再生成數據庫)
為服務器版本編寫腳本:SQL Server 2005 (生成2005的腳本,而不是默認的2008腳本,見下圖)
6、 按照下邊圖片的選項設定,點擊“完成”,即可完成數據庫由SQL Server 2008到SQL Server 2005的轉換。
后注:然后根據主機提供商給的數據庫,直接到網絡數據庫上導入腳本;或者再次使用本SSMS連接到主機提供商的數據庫上(這時肯定是SQL Server身份驗證,需要提供用戶名及密碼),通過網絡數據庫“新建查詢”的方法將剛才生成的腳本粘貼到新建查詢窗口,點擊“運行”,即可將全部數據表、存儲過程、約束關系等導入主機提供商的數據庫中,更具體問題,要與主機提供商聯系。
7、 另外,如果是把數據庫類似於備份一樣生成腳本,以后再完整地生成這個數據庫,那么第5步應該這樣做:
1) 編寫創建數據庫的腳本:True (數據庫一並生成)
2) 編寫數據的腳本:True (包含有用的數據)
3) 編寫Use DataBase的腳本:True
解決方法二:SQL Server 2008R2 數據庫降級為 SQL Server2005 (sql2005還原sql2008數據庫備份)不知道為什么,我的不可以轉換,有問題
安裝了一台64位Windows Server 2008 R2 ,然后安裝SQL 2005 再安裝SQL 2008 R2,最后通過sql08R2 任務-導出數據導到sql2005中的同名數據庫,這才解決。
SQL2005中還原報錯信息:
以下在SQL2008R2數據庫引擎中操作:先在SQL2005中新建個同名數據庫,就可以選擇導入到哪個數據庫中
然后根據提示,完成。
解決方法三:右擊數據點,點屬性,在“選項”中選擇數據庫兼容級別為SQL2005,備份或分離后即可還或附加在SQL2005上。還是不行
解決方法四:這個方法可以,只是報了很多錯誤,但終究是轉過去了。
1、准備好兩個數據庫,遠程的或者本地的都可以。
2、准備Navicat9_premium_9.1.9工具
3、安裝好Navicat9_premium_9.1.9會出現
4、打開Navicat Premium
5、新建兩個連接,可以是遠程,也可以是本地,連接名自己定義,現在我們定義兩個分別為SQL2008和SQL2005
6、如提示
打開SQL Server 配置管理器
選擇SQL Server 網絡配置-->MSSQLSEVER的協議-->在右邊把TCP/IP協議啟用
然后
選擇SQL Server 服務-->找到SQL Server (MSSQLSERVER)右鍵,屬性,將內置賬號選擇成Network Service,然后重啟服務即可。
7、錯誤排除了,現在就要開始接下來的步驟了
8、選擇工具-->數據傳輸
9、現在假設定義了兩個數據源,SQL2008與SQL2005現在我們要將SQL2008源中的某個數據庫復制到SQL2005源中的另一個數據庫(包括數據和函數方法)
10、那么現在在源連接中選擇SQL2008,下面選擇數據庫,模式選擇dbo,選擇需要的表,視圖,函數......
11、目標連接選擇SQL2005,數據庫最好事前准備一個空的數據庫,模式也選擇dbo
12、完成之后選擇高級
13、在其他選項中勾選遇到錯誤繼續
最后點擊開始,然后開始等待。
這樣就將SQL2008的數據庫完整的轉到SQL2005中了。