SharepointFoudation2013の移行
検索システムが壊れた
Shrepoint上にカスタム表をつくり、営業に案件入力やら、某期限あるライセンス等の管理を他部署にも入力させて、Accessから外部接続して、スクリリプトやら、ExcelVBA等を駆使して日頃運用しています。
ある日、ユーザから検索ができないと。。。あれ?イベントみると、なんか怪しいエラーで。
バックで動いてる、クローラーでエラー大量
適切な時間内にパイプラインから応答がなかったため、アイテムの処理が中止されました。このアイテムは、次回のクロールで再試行されます。 (CSSFeeder generated callback: The system has not received callback for the document;; SearchID = C1E7C246-92CC-4588-B6EE-1A8A8BB92589)
だって、、、大量ですよ、大量。(あ、それまでのindex削除してからなんで、全部エアラーです。)
沢山ググりましたぁ。キーワード的にはあるけど、どのブログにも解決までなく。
検索使えないと不便なんですよねー。
まぁ、色々ためてして、色々悩みましたが、新サーバに移行しようっと。
新サーバへの移行(準備)
以下、私たちの方法で、必ずうまくいくとは限りませんが、とりあえず記載します。
実は、ShrepointF2010から移行したことがあり、それと結局は同じやりかたしました。
環境、1台で、集約しています。(DBとか分けてません、推奨外ですがね。)
- とりあえず、新規にサーバ立てて、SP2013を標準インストール、そして、これまでサーバーは一度WinupdateでSP1にしたことがあるので、同レベルまでもっていく。とにかく、新サーバ上でフツーに、起動SP2013が動けばこっちののです。
- SQLServerConfiguration Managerを開き、全てのclientProtocolsのTCP/IP,SharepdMemory,Namepipesをenableにする。
- ServerServicesのServerBrowserが無効になっているので、自動、スタートに変更
このようにしておかないと、他サーバから指せないなんですよね。
ちなみに、事前に、ManagementStudioを別途入れ等したほうがいいかもです。
他サーバにManagementStudioがあればそれでOKです。
ManagementStudioで新・旧サーバへDB指すときは、「ホスト名¥Sharepoint」かな。
新サーバへの移行(作業)
- ManagementStudioをつかって、旧サーバ上のDB「WSS_Content」をバックアップします。(オンラインでかまいません)
- 新サーバ上のSharepoint全体管理のコンテンツデータベース設定の管理、WSS_Contentをクリックして、削除しちゃいます。また、後でくっつけるので。
- ここで、新サーバへManagementStudioで復元したいのですが、どうも、削除したはずのWSS_Contentがつかんでいるらしく復元するとエラーがでるので、一度、新サーバ上のSQLサービスを再起動します。
- ここで、旧サーバからもってきた、WSS_contentを上書きで復元します。上書きでOKです。
- 新サーバに直接ログオンして、以下コマンドでっす。
C:\Program Files\Common Files\microsoft shared\Web Server Extensions\15\BIN
に、移動して、
stsadm.exe -o addcontentdb -url http://ホスト名 -databasename WSS_Content
2.で削除したものをつっくけます。
念の為、サーバを再起動。
ここ重要、その後、SPの全体管理から
データベースのアップグレード状態の管理
を確認してください。ここに、状態で、「対は不要です」以外があったら、アップグレードしたほうがいいです。あとで不具合あると面倒なので。場合によっては、複数ある場合もあります。そのアップグレードの方法は。
サーバログインして、初期に実行した、
「SharePoint製品構成ウィザード」をやり直します。
これで、基本OKのようです。
おおまかな設定等は引継ありますが、特異な設定等あれば、引き継がれないかもしれないので、一応全ては、見直してください。
とりあえず、以上です。
尚、私は、ログDBがおかしかったので、一度、インデックス削除して、サイド作成しなおして、上記のエラーがでないことも確認しました。
また、今後のバックアップは、ManagementStudioさえいれれば、バッチで、DBバックアップ直接できるので、この方法に切り替えました。
SQLServerも所詮、Expressなんで、Agentでは、動かせませんね。