WSS 3.0アップデート-> Sharepoint 2010 Foundation、または災害復旧への正しい道

最近、Sharepoint Foundation 2010でWSS 3.0を更新しなければなりませんでした。Microsoftが私たちから「隠している」問題について話し、自分の経験を共有したいと思います。

前書き:

Windows Sharepoint Servicesはスタンドアロンサーバーとしてインストールされ、Windows Internal Database Engineを使用します。 ファームをSharepoint 2010 Foundationにアップグレードしたい。 残りはカットの下にあります。 誰が最終的な作業手順を気にする-記事の最後に。



マイクロソフトは、この手順の完全な(最初は思われる)ガイドをここに提供します



要するに、Microsoftは次の手順を提供します。

1)Sharepoint 2010 Foundationのディスク/ディストリビューションから、必要なすべてのソフトウェアをインストールします(前提条件)

2)Sharepoint 2010 Foundationをインストールする

3)インストール後、既存のWSS 3.0ファームの更新を選択します

4)完了。

申し訳ありませんが、それほど単純ではないことがわかりました。



サポートされている/サポートされていない更新パスの説明は 、Sharepoint 2010 FoundationはWindows Internal Database Engineをサポートしていないことを示しています。 次に、頭に浮かぶのは、サーバーにSQL Server Express 2008をインストールし、アップグレード中に指定することです。

注意! SQLサーバーにはx64アーキテクチャが必要です。Foundationインストーラーはx32ベースへの展開を拒否します。



実際には、私はそれだけを行いますが、更新時にSQLサーバーを変更することは不可能であることがわかりました。 Sharepoint 2010の更新ウィンドウで、Windows Internal Databaseサーバーが選択され、インストーラーが更新を正常に開始し、SQLサーバーに対する十分な権限がないというエラーがあります。 まあ、奇妙な...



この場合、インストーラーはWSS 3.0ファームを「強制終了」します。 管理ポータルとstsadmユーティリティの両方を使用する追加のアクションは、完全に不可能です。



WSS 3.0を復元する方法は? インプレースアップグレードを再試行するために、WSS 3.0をSQLサーバーに直接復元することにしました。

1)SQL Server Management Studioスナップインを使用して、Windows Internal Databaseに接続し、 SharePoint_ConfigおよびSharePoint_AdminContent_xxxx-xxxx-xxxx-xxxx-xxxxxxxxxデータベースのバックアップを作成します(これらは、WSSが設定を保存するために使用する2つのデータベースです)。 データベースをコンテンツで切断します(デフォルト名はデフォルトでWSS_Contentです)(detach)。

2)次に、WSSを再インストールします(すべてのService Packをアンインストール、再インストール、再インストールします)。 インストール中に、Windows Internal Databaseではなく、SQLサーバーのインスタンス(詳細モード)を指定します。

3)インストールとアップグレードが完了した後、WSS 3.0サービスを停止し、SSMSをSQLインスタンスに接続し、そこにある2つのデータベースを監視します。私の場合はSQL Server Express 2008 R2です。

4)WSSサービスを開始します。 同時に、WSSは以前と同様に正常に機能します。



どうやら-更新できるようになりましたが、今でもSQLサーバーに問題はありません。 もう一度、WSS更新ウィザード-> Sharepoint 2010を起動します。そして、見よ、ウィザードウィンドウでSQLインスタンスが指定されました。 [次へ]をクリックすると、再びWindows Internal Databaseインスタンスに対する権限の欠如を誓います。 「どのように!?」と思います。 したがって、すべてに加えて、WSSはサーバー/インスタンス名をデータベースのどこかに保存します。



いくつかのクエリの後、テーブルとそれが格納されている行を見つけました:SharePoint_Configデータベース、dbo.Objectsテーブル。

次のクエリを使用して、このデータを変更できます。

USE [SharePoint_Config]

ALTER TABLE dbo.Objects

SET Name='NEW INSTANCE NAME'

WHERE Name='OLD INSTANCE NAME'

SET Name='NEW SERVER NAME'

WHERE Name = 'OLD SERVER NAME'








更新ウィザードを再起動します。 そして、乾杯、最初のステップは、データベースに関連するエラーなしで成功します。 しかし、残念ながら、第2段階では、エラーERR Exception:System.ArgumentException:Error during encryption or encryption。

このKBで提供されているマイクロソフトのソリューションは役に立ちません。 インターネットで見つけたオプション(IISで管理ポータルノードを削除し、IISでアプリケーションプールを削除)は役に立ちません。

インプレースアップグレードではなく、データベースの切り離し方法を使用して、すべてを新しく展開することにしました。



これを行うには、上記の手順に従ってWSSサーバーを再度復元します。

1)Sharepointサイトのすべての設定を保存します(私の場合、これは1サイトサイトです )。

2)次に、WSSを削除し、その「クリーン」バージョンを配置します(上記の手順のステップ1と2のみ)。

3)SharePoint 2010 Foundationをアンインストールします

4)再起動します

5)SharePoint 2010 Foundationをスタンドアロンモードで再インストールします。 インストールが完了すると、インストーラーは既存の(「クリーン」な)WSSファームの更新を提案します-同意します。 今回は問題なく更新が行われます。

6)SharePoint 2010 Foundation管理センターで、手順1で書き留めた設定を使用してサイトを作成しています。 ウィザードに既存のサイトIIS(WSSで作成された)を使用するように依頼します。 コンテンツデータベースとして、SQLインスタンス(WSS_Content_Temp)に新しいデータベースを指定します。これは後で削除します。

7)WSS_ContentベースをSQLサーバーにアタッチ(アタッチ)します。

8) このマニュアルに従って、データベース更新して、コンテンツをSharePoint 2010 Foundationコマンドに添付します。

cd“ C:\ Program Files \ Common Files \ Microsoft Shared \ Web Server Extensions \ 14 \ Bin”

stsadm –o addcontentdb –url サイト –databasename WSS_Content –databaseserver NEWSERVER \ NEWINSTANCE

9)更新プロセスが進行中です。 その後、SharePointサーバーの全体管理のノードからWSS_Content_Tempデータベースを削除します。

10)ボイラ。



一般的に、2つのことは不明確です。インストーラーが必要な要件をチェックせず、完全に間違っているエラーを生成するのはなぜですか? しかし、これはかなり修辞的な質問です...



All Articles