有關 SharePoint 2003 轉移 SQL Server

by Joseph Wu 30. September 2012 02:56
之前有客戶因為安裝資料庫太分散,導致授權數不足,經過我們的分析之後,其實用現有的授權就足夠了,只需要將分散在各個 VM 中的 SQL Server instance 移除,並將資料庫統一集中即可。 這個想法其實很單純,但沒想到轉移 SharePoint 2003 的資料庫由 A Server to B Server 這麼麻煩。 由於我之前沒有嘗試過在 SharePoint 2003 上轉移 SQL Server 資料庫,所以我先去找了相關文獻,這才發現,在 SharePoint 2003 中,並不是改改 web.config 中的連線字串就結束了。參考連結如下: http://support.microsoft.com/kb/894164 上述技術文件大致上有幾個重要步驟: 1、使用 SharePoint 內建的工具進行備份 2、使用 SSMS 資料庫管理工具進行資料庫的備份 3、使用 SharePoint 組態設定網站,將原先的設定值全部砍掉 (這步驟有相當多細節) 4、還原使用 SharePoint 工具備份的資料 但是我一開始的第一個步驟就失敗了,如下圖: SITEDB (網站相關資料庫) 、 DOCLIB (文件資料庫) 我都成功備份,就 INDEX 備份失敗。我找了老半天找不出原因,但我不打算停止嘗試,我要把 SharePoint 產生的網站砍掉重建  = = 當然,在做之前,因為有 vmware ESXi 的虛擬化環境,所以一定要先做 snapshot ,至少失敗了還可以倒回來。 過程就不多說了,我嘗試的結果就是,SharePoint 所產生的備份檔無法重建網站 Orz… 事件檢視器的產生一堆錯誤 logs 我檢查過資料夾權限、執行 SQL Server 帳戶權限,但就是找不出為何會還原失敗的原因。試了 3、4 個小時後,我覺得這樣不行,趕緊使用 snapshot 還原,並找詢其它可用辦法。 過程中我覺得很納悶,為何組態設定網站的資料庫、內容資料庫都可以由組態網站中進行設定,但 SharePoint 的其它二個資料庫卻沒辦法,相關資料庫一共 4 個如下: PortalSiteName_prof PortalSiteName_serv PortalSiteName_site SharePoint 入口網站 Server 2003 組態資料庫。預設情況下,這個資料庫稱為 SPS_Config_db   我想了想,既然 portal 網站中所有的檔案都沒有連線字串相關資訊,那程式該怎麼知道資料庫是位於哪台 SQL Server , 如果程式寫死又被 compile 成 .dll 檔的話我就認了。但既然不在檔案裡,那或許是在資料庫中。 或許是我運氣不錯,被我找到在組態資料庫中的 Database 資料庫中的  DatabaseServiceId 中。雖然說是一堆看不懂的數字,但是我們剛剛已經確定其中一個資料庫被我改了 SQL Server 的主機,所以應該是有 2 個一樣的,一個不一樣的字串,我們就 copy 那一個不同的字串,在 paste 到另外 2 個資料庫的欄位即可,如下是完成圖。   終於弄完了,想說下次應該碰不到了吧,但還是寫起來,避免自己忘掉。   可以躺平了……

Tags:

SQL Server

關於我們

這裡是由一群熟悉 Microsoft IT 技術的工程師所共同分享技術文章的部落格,除了定期分享工作上的技術經驗,我們也提供專業的技術顧問諮詢服務,有任何疑難雜症都歡迎與我們聯絡!

  • 陳冠龍(Owen)
  • 02-2322-2480 # 33
  • 陳昌賢(Mars)
  • 02-2322-2480 # 16
  • 有任何的建議或問題,請來信 ithelp-azure@miniasp.com

※ 學習資源:
    2016/3/9 - 你所不知道的 Microsoft Azure 雲端採購技巧
    (講者:多奇數位技術總監 - Will 保哥)

最新消息

企業上雲端會是未來趨勢

微軟主打 2 種公有雲平台

Office 365 & Azure

有興趣皆可來電 or E-Mail 詢問

Calendar

<<  June 2018  >>
MoTuWeThFrSaSu
28293031123
45678910
11121314151617
18192021222324
2526272829301
2345678

View posts in large calendar