вторник, 3 января 2012 г.

Перенос БД Sharepoint 2010

Вводная: Упал сервер SQL, на котором были базы данных Sharepoint 2010. Упал только системный раздел. Все файлы баз в порядке.

Задача: Перенести БД на другой сервер.

Дополнительная информация: Имеется статья http://technet.microsoft.com/ru-ru/library/cc512725.aspx "Перемещение всех баз данных (SharePoint Server 2010)", но я бы не рекомендовал ей пользоваться, цитата с http://argon.pro/blog/2010/11/move-sharepoint-database/ "В этих путях по-прежнему фигурирует старое имя сервера, а доступ к новому серверу перенаправляется с помощью Alias-a. Это работает, если старый сервер функционирует, либо DNS имя старого сервера теперь ссылается на новый сервер."

Решение:

Останавливаем службы Sharepoint
SharePoint 2010 Administration
SharePoint 2010 Timer
SharePoint 2010 Tracing
SharePoint 2010 User Code Host
SharePoint 2010 VSS Writer
SharePoint Foundation Search V4
SharePoint Server Search 14
Службу веб-публикации
Служба Web Analytics


На сервере, где работает веб-сайт центра администрирования, в командной строке введите iisreset /stop

Устанавливаем на новом компьютере SQLserv.
Копируем файлы MDF, LDF и NDF на новый сервер. Подсоединяем их.


Затем выполняем команду -
C:\Windows\system32>"c:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\BIN\stsadm.exe" -o renameserver -oldservername OLDSQL -newservername NEWSQL

Запускаем службы и делаем iisreset /start

Далее, необходимо запустить Мастер настройки продуктов SharePoint 2010 и пройти его (без пересоздания сайтов)

Посмотреть состояние БД можно по адресу http://sharepointserver:55555/_admin/DatabaseStatus.aspx (не забудьте заменить адрес и порт на свои)

8 комментариев:

  1. Подскажите пожалуйста, в мастере надо подключиться к новой ферме? или оставить ту которая есть? просто у меня после преобразований выдаёт старый сервер с базами(

    ОтветитьУдалить
    Ответы
    1. Я не подключался к новой - я просто провёл мастер с сохранением всех параметров

      Удалить
    2. т.е. Вы не отключались от текущей фермы?
      и после все действий на странице DatabaseStatus.aspx он отобразил новый сервер?
      а есть какие-нибудь нюансы по этому процессу? мб я что-то упускаю?

      Удалить
    3. Видимо что-то делаете не так, у меня после указанных выше действий сразу начал определять новый сервер. Смотрите логи.

      Удалить
  2. А ещё такой вопрос, если можно... при указании старого и нового имени сервера указывается должен указываться и экземпляр базы? (прим. старый сервер - serv1\db01, новый - serv2\db02 или просто указывать serv1 и serv2?)

    ОтветитьУдалить
    Ответы
    1. Имена баз в данном случае не должны меняться! Так что указывается только имена сервера

      Удалить
  3. хм... т.е. вы остановили службы, сделали стоп иис, переименовали сервер, запустили всё. и вот когда мастера запустили он сразу показал имя нового сервера?

    ОтветитьУдалить