昨天受同事所託,臨時要將某台資料庫伺服器的一些資料庫搬到另一台SQL Server,這聽起來似乎也不是什麼難事,就是把資料庫複製然後貼上而已嘛…..!!! 代誌絕不是像我想的這麼簡單,我以為只要備份資料庫成bak檔然後Restore到另一台Serverok了,但卻遇到阻礙。

  原因很簡單,透過SQL Client製作資料庫備份檔只會把資料庫備到資料庫所在的伺服器上,備份好還必須登入那台機器或遠端存取機器檔案把檔案拿出來再restore到目標伺服器上,只可惜,我就是沒進那台機器的權限,所以備份好後也拿步道備份檔,所以就只好再想其他做法。

  好家在SQL Server Client還是有其他一些能夠直接把資料庫轉到目標伺服器的作法,最後我找到了直接匯出資料庫的方法,本以為它就像是一般把資料轉成像excel檔的老套做法而已,但其實不然,他是可以轉成很多種資料物件的,excel只是其中之一,大部分OLEDB物件都有support,而其中一個則是轉成其他SQL Server的資料庫物件,換句話說,你可以直接用匯出的方式把資料庫傳入到目標伺服器上! 這就不用透過備份的做法去聲檔案再想辦法Restore! 作法如下:

1.登入來源資料庫伺服器然後選擇要備份的資料庫按右鍵點匯出資料功能.

2.  出現匯出精靈,選下一步     .

3. 因為資料來源是SQL Server,所以要選擇SQL Native Client做為資料來源載體,然後在下方填入來源資料庫伺服器名稱, 然後選擇帳號驗證方式以及要轉出資料的資料庫.

4.接著同樣操作模式選擇資料匯出目的,因為同樣是SQL Server,所以做法與上面差不多.

5.唯一要注意的是因為墓地資料庫還沒有你要轉入的資料庫名稱,所以必須新增資料庫名稱之後才能下一步!

6.這裡直接用預設值就好,下一步.

7.選擇要複製的資料庫內的資料表,全選就對了,因為你是要把整個資料庫搬過去.

8.立即執行吧.

9.他說:這一步下去就可以完成了

10.看到沒有錯誤就成功了

11.然後在SQL Client上看一下目標伺服器是否已經新增了剛剛搬過來的資料庫.

12.大功告成.​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

  是不是很容易呀??? 但這也是費了我一番工夫想出來的WORKROUND呀,但這方法還是有缺點,那就是不適合用在超大型資料庫上,另一方面使用者權限也不會一起被搬到新機器,必須從新伺服器上重新加入使用者權限給DB

  大概就是這樣吧! 工作就是要不斷學習呀!

 

2017420日星期四7:58 PM

 

arrow
arrow
    文章標籤
    資料褲 備份 SQL Server
    全站熱搜

    jackterrylau 發表在 痞客邦 留言(0) 人氣()