看來,你已經決定要從sql server 2000升級到sql 2005了。
你可能已經在你的桌面電腦和測試環境中安裝了一個sql server 2000的實例并想要進行適當的升級。或者你可能只是想安裝一個新的sql server 2005實例。本文將主要關注安裝新實例時可能遇到的問題,同時本文也將對兩個版本之間交互的選項(比如連接服務器、多服務器管理、日志傳遞)進行分析。
在sql 2000主機上安裝sql server 2005
如果你想在你的sql server 2000主機上安裝sql server 2005,那你的主機上應該至少安裝了service pack 3a,最好能夠安裝sp4。
在將sql server 2005安裝到sql 2000主機上時,你可能會遇到如下問題:
安裝向導無法識別默認的sql server 2000實例。由于安裝向導可能無法識別默認的sql server 2000實例,他可能會要求你安裝默認的sql server 2005實例。盡管安裝完全成功,但新的2005實例實際上并未被安裝。為此,你必須要卸載并重新安裝2005實例,并在新的安裝過程中,輸入一個命名的實例。
sql server 2000代理不能重新啟動。在完全安裝后,sql server 2000的代理可能無法重新啟動,一般來說,只要在代理服務器中重新輸入密碼就能解決這一問題。
在安裝2005后,在數據庫服務器運行時,2000的企業管理器不能工作。如果企業管理器在安裝2005后不能工作,請參照微軟在co-exist of sql server 2000 and sql 2005中所述的方法。
1.點擊開始,點擊運行,輸入regedit 然后點擊ok。
2.在注冊表中找到如下子
| hkey_local_machinesoftwaremicrosoftmicrosoftsqlserver80toolsclientsetup | 
3.右擊客戶端安裝子鍵,選擇新建,而后點擊字符串值。
4.將你所創建的子鍵命名為sqlpath,然后按下回車。
5.雙擊sqlpath子鍵,然后在數值數據對話框處輸入c:program filesmicrosoft sql server80tools。
6.點擊ok,然后關閉注冊表編輯器。
7.點擊開始,點擊運行,輸入regsvr32 "c:program filesmicrosoft sql server80toolsbinnsqlmmc.dll",然后點擊ok.
sql server management studio沒有安裝。在安裝sql server management studio之前,你需要首先安裝.net framework 2.0。
sql 2000和2005是可以在同一臺主機上并存的,但對于兩個版本之間的交互,有人曾問過我如下的問題:
| 問題 | 使用2005工具時的錯誤信息 | 使用2000工具時的錯誤信息 | 可能性? | |
| 1 | 注冊新的sql server | (成功) | 連接server 2005的連接無法建立。 原因:[sql-dmo]你必須使用sql server 2005的管理工具來建立到這個服務器的連接。 | 只能從2005到2000 | 
| 2 | 多服務器管理 | 2005 – 主服務器, 2000 – 目標服務器: 主服務器<2005 server>版本9.00.2047與目標服務器<2000 server>無法兼容。 | 2000 – 主服務器, 2005 – 目標服務器: 由于下面所示的連接失敗,sql server注冊失敗 [sql-dmo] 你必須使用sql server 2005的管理工具來建立到這個服務器的連接。 | 無法并存 | 
| 3 | 復制 | 成功 | 沒有錯誤信息,sql server 2005實例并沒有出現在可能的定閱服務器列表中。 | 只能從2005到2000 | 
| 4 | 連接服務器 | 成功 | 成功 | 可以并存 | 
| 5 | 數據庫還原 | 備份 – 2005, 還原 – 2000: 備份數據庫版本611擁有on-disk結構,但服務器支持版本539,不能還原或者升級數據庫。restore database非正常退出。 | 備份 – 2000, 還原 – 2005: 成功 | 只能從2000到2005 | 
| 6 | 日志傳遞 | 由于版本不正確,‘第二服務器名’并不是一個有效的服務器實例。第二服務器實例必須運行在sql server 2005或更高版本上。 | sql server 2005實例并沒有出現在可能的第二服務器實例列表中。 | 不能并存 | 
sql server 2000和2005:六個兼容性問題
sql server 2000和2005可以在同一臺主機上共存。在第一部分:在sql 2000主機上安裝sql server 2005 ,我使用表格的方式列出了一些兼容性問題。下面,我將就表中所列的升級后sql server 2000和2005間的交互問題進行具體的解釋。
注冊新的sql server
多服務器管理
復制
連接服務器
備份和還原
日志傳遞
1.注冊新的sql server
在企業管理器中:
  
下圖顯示了試圖添加sql 2005實例時的錯誤信息:
  
但是在management studio中,連接成功
  
2. 多服務器管理
我有一個新的實例希望添加到維護計劃中,我們是否可以通過多服務器管理選項來實現它呢?下面讓我們來看看具體操作:
在企業管理器中:
  
當我試圖將sql server 2000作為主服務器,sql server 2005作為目標服務器時,得到了如下錯誤信息:
  
在management studio中:
  
錯誤信息如下:
  
3. 復制
在企業管理器的發布屬性中,我嘗試推出一個新的定閱服務器:
  
正如我們所料,sql server 2005實例并沒有出現,所以它不能用做一個訂閱服務器。
在management studio中:
  
添加新的訂閱服務器:
  
成功。
注意:雖然有些命令的語法有所改變。比如:索引中的inclue,noexpand提示,pivot和unpivot,但令人驚訝的是,數據被成功的復制了。
4. 連接服務器
在企業管理器中:
  
我輸入了sql 2005的實例名和安全上下文:
  
連接服務器被配置成功。我也嘗試了在連接服務器中運行命令,工作正常,在我使用management studio時,也得到了同樣的結果。
5. 備份和還原
備份sql server 2000的數據庫當然可以還原到2005。但是,一旦使用過sql 2005,即使兼容級別仍然是80,數據庫也不能再被還原到sql 2000. 這是升級中,一個非常令人痛苦的問,因為你無法通過備份和還原“回滾”到舊版本。
在備份一個sql 2005數據庫(兼容級別=80)后,如果你試圖將它還原到sql 2000中,將得到如下錯誤信息:
  
6. 日志傳遞
當試圖在企業管理器中添加日志傳遞的目標數據庫時,sql server 2005實例名并沒有在服務器名列表中出現:
  
當試圖在management studio中添加第二sql 2000實例時,會得到如下信息:
  
結論
sql server 2000和2005版本可以在同一臺主機上很好的共存。在安裝時可能遇到的一些問題是可以解決的。但如果你試圖通過管理工具在兩個版本之間進行交互,并不是所有的工作都能順利完成的。
新聞熱點
疑難解答