從舊版本SQL Server中重新儲存資料

iDotNetSpace發表於2008-07-03
SQL Server有幾個版本都在使用中——4.2, 6.0, 6.5, 7.0, 2000,以及2005——你很有可能會需要從以前的版本中重新儲存資料庫到後面的版本中。

 微軟在7.0版本中對資料庫引擎的工作方式和資料的儲存方式作了一些非常巨大的變化。這就使得從7.0版本之前的SQL Server中重新儲存資料的方式變得不那麼直接。

 7.0,2000和2005版本的SQL Server允許你將資料庫重新儲存到稍後的SQL Server版本中。7.0版本之前的任何東西都需要資料移植,在這個過程中你必須實際地將資料從原有的SQL Server版本中移動出來,再放入新的SQL Server版本中。

 既然最新的版本是2005,那麼我就討論一下如何將資料從原有的SQL Server版本中移動到最新的資料庫管理系統釋出版本中。無論如何,這些技術同樣也可以應用在7.0或者2000版本上。

從7.0之前版本的SQL Server中重新儲存資料

 我前面提到了,沒有這樣的一種直接方式可以將早於7.0版本之前的資料庫中的資料僅僅是備份然後就重新儲存這麼簡單直接。要將資料移動到SQL Server 2005中,就必須完成某些型別的資料移植,有可能是通過建立一個SSIS包,建立一個到你原有資料庫版本的ODBC源。或者,你可以使用BCP(塊拷貝程式)來將資料從原有的版本中移出來,移入SQL Server 2005資料庫。

沒有一種方式可以直接從備份檔案中抽取資料。所以如果你只有一個你的資料庫的備份拷貝,那麼你就需要找到一個原有版本的SQL Server ,或者安裝磁碟來建立起那個版本的SQL Server來重新儲存資料。

SQL Server 7.0及其以後版本的重新儲存

只要簡單地從你的備份中重新儲存資料庫。這項工作就像你曾經作過的任何重新儲存,要麼使用GUI工具,要麼是T-SQL命令。看看這些文章,瞭解如何執行重新儲存:

·使用企業管理器來重新儲存 SQL Server
·使用T-SQL 命令來重新儲存SQL Server
·從事務日誌中重新儲存SQL Server
·從另外一個SQL Server中重新儲存資料庫

用7.0之前的版本,你可以使用資料移植處理程式將你的資料從原有版本的SQL Server中移動到新的版本中。這種方式要求兩個資料庫都必須是線上的。

你還可以使用attach 和detach兩個選項來將你的資料庫從原有版本中移植到新的版本中。

重新儲存系統資料庫

 需要提出的一個說明就是你可以重新儲存使用者資料庫,但是你不能從先前的版本中重新儲存系統資料庫到新的SQL Server版本中。當SQL Server改善功能的時候,大多數的修改都是儲存在相同資料庫中。新表的建立和原有表的修改(為什麼你不能使用直接使用系統表的原因)都讓重新儲存系統資料庫變得不可能。

你可以使用SSIS或者BCP方式來移植資料或者你在這些資料庫中建立的新的物件,但是你不能移動整個資料庫。

更新使用者和登入資訊

當重新儲存資料庫到一個完全不同的SQL Server例項環境中需要時刻記住的一個問題就是,使用者和登入資訊需要更新以確保資料庫認證可以按照計劃工作。參考從其它的SQL Server中重新儲存資料庫,學習如何進行。

 正如你看到的,從SQL Server 7.0開始,微軟已經開始讓資料庫管理員感覺到,把資料從比較老版本的SQL Server中移植到較新的版本中是相當簡單的了。這個想法通常還包括一些向後的相容。但是這個功能還會存在多久?它在SQL Server 2005中確實存在,但是下一個名為Katmai的SQL Server的釋出版本會不會向後相容,只有時間才知道了。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-369048/,如需轉載,請註明出處,否則將追究法律責任。

相關文章