Как я писал ранее, миграция Sharepoint с версии 2007 на 2010 не приносит особых сложностей, если используется только стандартный функционал. Но такое бывает крайне редко. Передо мной стала задача миграции портала вместе с существующими наработками.
Текущая версия портала развернута на MS Windows Server 2003 SP2 (32-разрядная). В приведенной ссылке есть ссылка на документацию от MS по миграции. Существуют Требования к оборудованию и программному обеспечению (SharePoint Server 2010). Исходя из этой ситуации мне подходит только миграция БД с сервера c Sharepoint 2007 на сервер с Sharepoint 2010. Как всегда в интернете можно найти много информации, поэтому буду отталкиваться от статьи SharePoint 2010 Cookbook: How to Migrate a SharePoint 2007 Site to SharePoint 2010 Using Database Attach (некоторые картинки будут оттуда).
Опишу последовательность шагов:
Делать это можно в Центре администрирования. Нужно перейти на вкладку Операции и в группе "Резервное копирование и восстановление" выбрать "Выполнение резервного копирования". Там выбрать над чем нужно произвести резервное копирование. Выбрать тип копирования (Полное/Разностное) и месторасположение резервной копии.
В общем, все достаточно просто.
Шаг 2. Установить обновления
На следующих страница (страница1 , страница3 и страница2) можно скачать последние обновления.
Шаг 3. Подготовка веб-приложения к миграции.
На самом деле здесь все не так просто. Мало того, что нужно определить что же из существующего портала нужно (какие узлы, списки, элементы). Надо еще и вычистить следы от всякого рода мусора, который остался от долгого использования портала.
Сейчас опишу только как смигрировать "чистое" содержимое, т.е. содержимое, в котором нет мертвых ссылок на несуществующие объекты (фичи, обработчки и тд).
Разбор возможных ошибок рассмотрим в следующей статье.
Если переделывать структуру портала нет необходимости, то этот шаг можно пропустить.
Допустим у вы собираетесь мигрировать сайт http://duyfarm/TeamSite.
Перед тем как мигрировать базу данных содержимого нужно выполнить команду
stsadm -o preupgradecheck
Данная команда подготавливает базы к миграции, а также показывает где существуют проблемы в текущей конфигурации базы данных содержимого.
Вывод примерно следующий:
Как видно, у меня проблема пока только в том, что не выполняются требования по окружению рабочей среды (32х разрядная винда, о чем я писал выше).
Далее нужно сделать бэкап нашей базы данных содержимого. Выбираем нужную базу (можно узнать через Центр Администрирования в блоке "Базы данных содержимого")
Выбираем тип бэкапа "Full", вводим название набора бэкапа и выбираем файл, в который будет производиться бэкапирование. Нажимаем кнопку ОК.
Шаг 4. Присоединение базы данных содержимого к веб-приложению
Это самый замечательный шаг. На этом шаге, если повезет, у вас не возникнет проблем. Если же проблемы дадут о себе знать, то в некоторых случаях выручат подробные логи.
Я очень долго провозился с присоединением базы данных, получал очень много ошибок, откатывался на первый шаг и начинал все с начала. В общем, это очень увлекательное занятие. Может быть и вы оцените всю мощь Sharepoint'а :-)
И так начнем!
Текущая версия портала развернута на MS Windows Server 2003 SP2 (32-разрядная). В приведенной ссылке есть ссылка на документацию от MS по миграции. Существуют Требования к оборудованию и программному обеспечению (SharePoint Server 2010). Исходя из этой ситуации мне подходит только миграция БД с сервера c Sharepoint 2007 на сервер с Sharepoint 2010. Как всегда в интернете можно найти много информации, поэтому буду отталкиваться от статьи SharePoint 2010 Cookbook: How to Migrate a SharePoint 2007 Site to SharePoint 2010 Using Database Attach (некоторые картинки будут оттуда).
Опишу последовательность шагов:
- Сделать backup всего содержимого портала (всех баз данных)
- Накатить последние обновления для Sharepoint 2007 и Sharepoint 2010. Много проблем у меня возникло именно потому, что я не использовал последние исправления. Об этом расскажу ниже.
- Подготовить веб-приложение к миграции
- Скопировать backup базы содержимого на Sharepoint 2010 MS SQL Server
- Присоединить базу данных содержимого к веб-приложению.
Делать это можно в Центре администрирования. Нужно перейти на вкладку Операции и в группе "Резервное копирование и восстановление" выбрать "Выполнение резервного копирования". Там выбрать над чем нужно произвести резервное копирование. Выбрать тип копирования (Полное/Разностное) и месторасположение резервной копии.
В общем, все достаточно просто.
Шаг 2. Установить обновления
На следующих страница (страница1 , страница3 и страница2) можно скачать последние обновления.
Шаг 3. Подготовка веб-приложения к миграции.
На самом деле здесь все не так просто. Мало того, что нужно определить что же из существующего портала нужно (какие узлы, списки, элементы). Надо еще и вычистить следы от всякого рода мусора, который остался от долгого использования портала.
Сейчас опишу только как смигрировать "чистое" содержимое, т.е. содержимое, в котором нет мертвых ссылок на несуществующие объекты (фичи, обработчки и тд).
Разбор возможных ошибок рассмотрим в следующей статье.
Если переделывать структуру портала нет необходимости, то этот шаг можно пропустить.
Допустим у вы собираетесь мигрировать сайт http://duyfarm/TeamSite.
- Создайте новое веб-приложение с пустой коллекцией сайтов (например: http://duyfarm:6789)
- Залогинитесь на Sharepoint сервер, используя учетную запись со следующими правами
- SharePoint Farm Admin
- Локальный администратор на веб-сервере
- Права db_owner в базе данных содержимого, которая относится к http://duyfarm/TeamSite и http://duyfarm:6789
- Проверьте, что текущий пользователь имеет права на содержимое мигрируемого сайта.
- Откройте Command Prompt и измините директорию на %COMMONPROGRAMFILES%\Microsoft shared\web server extensions\12\bin, затем выполните команды stsadm -o export -url <URL name> -filename <export file name> -includeusersecurity
Перед тем как мигрировать базу данных содержимого нужно выполнить команду
Данная команда подготавливает базы к миграции, а также показывает где существуют проблемы в текущей конфигурации базы данных содержимого.
Вывод примерно следующий:
Как видно, у меня проблема пока только в том, что не выполняются требования по окружению рабочей среды (32х разрядная винда, о чем я писал выше).
Далее нужно сделать бэкап нашей базы данных содержимого. Выбираем нужную базу (можно узнать через Центр Администрирования в блоке "Базы данных содержимого")
Выбираем тип бэкапа "Full", вводим название набора бэкапа и выбираем файл, в который будет производиться бэкапирование. Нажимаем кнопку ОК.
Шаг 4. Присоединение базы данных содержимого к веб-приложению
Это самый замечательный шаг. На этом шаге, если повезет, у вас не возникнет проблем. Если же проблемы дадут о себе знать, то в некоторых случаях выручат подробные логи.
Я очень долго провозился с присоединением базы данных, получал очень много ошибок, откатывался на первый шаг и начинал все с начала. В общем, это очень увлекательное занятие. Может быть и вы оцените всю мощь Sharepoint'а :-)
И так начнем!
- В Центре администрирования Sharepoint необходимо создать новое веб-приложение. Например: http://duyfarm2010:6789
- Если существуют нестандартные компоненты Sharepoint, то следует их установить в ферме и развернуть на созданное веб-приложение
- После этого можно восстановить бекап нашей базы данных содержимого SharePoint 2007. Откройте Microsoft SQL Server Management Studio. Правой кнопки мыши щелкните на Databases и выбирите Restore Database...
- Введите новое название database, будьте уверены, что вы не перезаписывается существующую базу данных. Выберите Source и нажмите кнопку OK, чтобы начать восстановленеи базы.
- Откроейте SharePoint 2010 Management Shell и отсоедините текущую базу данных содержимого от веб-приложения.
Dismount-SPContentDatabase <ContentdBName> - Проверьте, что установлены все необходимые кастомные компоненты. Если возникнут ошибки, убедитесь, что вы их исправили перед тем, как присоединять базу данных содержимого SP2007.
Test-SPContentDatabase -Name <DatabaseName> -WebApplication <URL> - Mой тест показал, что ошибок нет. Теперь мы готовы к выполнению команды Mount-SPContentDatabase. Этот командлет также обновляет содержимое базы данных SP2007 до SP2010.
Mount-SPContentDatabase <ContentDb> -WebApplication http://SiteName - После завершения этой процедуры Вы должны проверить лог-файлы (файлы логов обновления и ошибок), чтобы быть уверенным что нет никаких ошибок. Лог файлы находятся в папке %COMMONPROGRAMFILES%\Microsoft Shared\web server extensions\14\LOGS. Имя лог-файлов имеет следующий формат: Upgrade-YYYYMMDD-HHMMSS-SSS-error.log и Upgrade-YYYYMMDD-HHMMSS-SSS.log, где YYYYMMDD дата и HHMMSS-SSS время (24ч формат). Если есть ошибки, то скорее всего они исправляются на сервере SharePoint 2007. В следующей статье я расскажу про ошибки, которые у меня возникли и расскажу как они решаются
- Зайтите как Владелец Сайта и выберите Site Actions > Visual Upgrade
- Выберите Update the user interface. Нажмите кнопку OK
- Сайт должен выглядеть следующим образом:
- Метод присоединения базы данных работает с обоими версиями SharePoint 2010 (Foundation и Server).
- Ограничения экспорта/импорта метода:
- Вы не можете сохранить состояния Рабочие процесс, alerts, features, solutions, или Recycle-Bin используя операцию экспорта.
- Stsadm поддерживает перемещение только сайтов(экземпляров SPWeb). Вы не сможете экспортировать выбранные элементы или списки.
Инструменты миграции SharePoint на все случаи жизни
А если требуется перенести разрешения пользователей на узлах с 2007 на 2010 c учетом того, что домен на 2010 будет использоваться другой, есть какие-нибудь мысли по этому поводу как это сделать более корректно, чтобы вручную на 2010 не прописывать заново разрешения пользователей на узлах, а их не одна сотня используется.
ОтветитьУдалитьК сожалению, не сталкивался с такой задачей. Мыслей много по этому поводу, но что-то не кажутся они мне best practicies
Удалитьвопрос, столкнулся с такой проблемой при миграции, с wss 3.0 на 2010, в новом дизайне не работают некоторые календари, а в старом дизайне все ок, куда копать как решить этот трабл?
ОтветитьУдалитьДизайн кастомизировали? Есть ли ошибки в Консоли браузера?
Удалитьнет дизайн не кто не трогал... в консоли браузера? когда переходишь по списку календарь, выскакивает ошибка: Ошибка Возникла неожиданная ошибка. Устранение неполадок в работе службы Microsoft Sharepoint Fondation. индикатор взаимосвязи: 3f ...... так далее в лош файле особо нечего нету на ошибку.... https://social.technet.microsoft.com/Forums/ru-RU/1f35f9c5-b75b-446e-9357-b23d03d2cddc/-sharepoint-wss-30-2010?forum=sharepointru
УдалитьТ.е. нет никаких кастомных пакетов и всё из коробки?
УдалитьПро консоль вот тут написано:
1. Хром - https://learn.javascript.ru/debugging-chrome
2. Лиса - https://developer.mozilla.org/ru/docs/Tools/%D0%9A%D0%BE%D0%BD%D1%81%D0%BE%D0%BB%D1%8C_%D0%B1%D1%80%D0%B0%D1%83%D0%B7%D0%B5%D1%80%D0%B0
Но это в случае ошибки на клиенте, у вас ошибка серверная. Я, если честно, с таким не сталкивался. Пробовали поднять с нуля шарик и обновить? Затем опять поднять, подцепить базу и обновить? Вполне возможно, что у вас какая-то локальная проблема. Можно еще в логи винды заглянуть
как раз так и делал, с нуля поднимал шарик 2 сервера 1-sql 2-сам sharepoint сервер, после обновлял, моунтил базу sql через востановление, как только я перехожу на новый дизайн список - календарь с днями рождениями падает в ошибку
ОтветитьУдалитькстати про логи винды совсем забыл, в общем нашел ошибку, ошибка появляется сразу после того как перехожу на не рабочий список-календарь.
ОтветитьУдалитьНе удалось загрузить файл шаблона элемента управления ''/_controltemplates/TaxonomyPicker.ascx''. Не удалось загрузить тип "Microsoft.SharePoint.Portal.WebControls.TaxonomyPicker" из сборки "Microsoft.SharePoint.Portal, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c".
Т.е. проблема решилась?
Удалитьнет, проблема остается, просто раньше не смотрел логи виндовые. после перехода по списку календарь, ошибка таже, но вот в логах винды пишет:
УдалитьНе удалось загрузить файл шаблона элемента управления ''/_controltemplates/TaxonomyPicker.ascx''. Не удалось загрузить тип "Microsoft.SharePoint.Portal.WebControls.TaxonomyPicker" из сборки "Microsoft.SharePoint.Portal, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c".
Вот что поиск дал: https://social.technet.microsoft.com/Forums/ru-RU/d33a409b-4ad1-4d25-9ec3-4d0b22e558f1/-taxonomypickerascx?forum=sharepointru
УдалитьВы накатили все хотфиксы?
да эту статью я уже видел, и самое что интересное, сейчас я файлик этот TaxonomyPicker.ascx поправил, но ошибка при нажатии на список-календарь, все равно выскакивает... в виндовых логах, ошибки больше нет.
Удалитьхмм все ли я хотфиксы накатил? ну через центр обновление windows, все что можно поставил.
Нет, я имел в виду что-то типа этого https://dplotnikov.wordpress.com/2016/07/21/%d0%bd%d0%b0%d0%ba%d0%be%d0%bf%d0%b8%d1%82%d0%b5%d0%bb%d1%8c%d0%bd%d1%8b%d0%b9-%d0%bf%d0%b0%d0%ba%d0%b5%d1%82-%d0%be%d0%b1%d0%bd%d0%be%d0%b2%d0%bb%d0%b5%d0%bd%d0%b8%d0%b9-%d0%b4%d0%bb%d1%8f-sharepo-64/
Удалитьох ты там их дофига, https://technet.microsoft.com/library/mt715807(v=office.16).aspx
ОтветитьУдалитьпопробую скачаю, поставлю, после с мигрирую еще раз, напишу получилось или нет..
Спасибо большущие, нактил все обновления по ссылке выше, смаунтил базу, после применил вот этот совет:
ОтветитьУдалитьC:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\template\controltemplates
Заменить
<%@ Control ClassName="TaxonomyPickerControl" Language="C#" Inherits="Microsoft.SharePoint.Portal.WebControls.TaxonomyPicker,Microsoft.SharePoint.Portal, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
на это
<%@ Control ClassName="TaxonomyPickerControl" Language="C#" Inherits="Microsoft.SharePoint.Taxonomy.TaxonomyFieldEditor, Microsoft.SharePoint.Taxonomy, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
подсмотрел здесь
http://laurentcotton.wordpress.com/2011/06/15/sharepoint-2010-comment-corriger-lerreur-7043-taxonomypicker-une-bonne-fois-pour-toute/
после применил вот этот совет:
$wa = Get-SPWebApplication -Identity http://sp1ser
$wa.Properties["portalsuperuseraccount"] = "domain\SP_admin_writers"
$wa.Properties["portalsuperreaderaccount"] = "domain\sp_admin_readers"
$wa.Update()
все заработало, календарь стал открываться.
Отлично!
Удалитьвозникла другая ошибка, может подскажешь...
ОтветитьУдалитьсуть в чем: все загружается норм. но один из разделов переадресуется на старый сервер, где посмотреть изменить ссылку на новый?
Одно из двух:
Удалить1. Это пункт меню. Надо идти в настройки сайта и менять адрес. Хотя там должен быть относительный адрес
2. На странице жестко прошито. Меняли например в Дизайнере. Решение: изменить страницу там же или в браузере, если есть такая возможность.
1. в настройки сайта, это в центре администрирования? или на самом сайте через действия сайта параметры сайта? странно то что все пункты ссылки поменялись на новый адрес, а один пункт с верху остался линк на старый сайт...
ОтветитьУдалитьдизйнер вообще не запускается, пишет ошибку: sorry the page you're looking for cannot be found. настройках приложения ( общие параметры\параметры рабочих процессов, пункт - разрешить пользовательские рабочие процессы для всех сайтов этого веб приложения, галка стоит да)
тоессть, выбрать меню которое сверху, оно разграничивает отделы, и по нему нажать свойства то будет видно например: http://spser1/it/default.aspx и все остальные меню также начало идет http://spser1/ ( домен новой фермы куда была мигрирована старая) и т.д. а тут в одном отделе показывается ссылка на старую ферму http://carrier/it_project/default.aspx
ОтветитьУдалитьвообщем решил проблему, огромное спасибо.
ОтветитьУдалить"Действия сайта" > "Параметры сайта" > верхняя панель ссылок, далее тыкаем по пункту который нужно изменить и вуаля в пункте: введите веб адрес: и там изменяем.!
Извиняюсь за молчание, не было времени. Именно про это я и говорил. Хорошо, что проблема решена
УдалитьЭтот комментарий был удален автором.
ОтветитьУдалитьВозникла такая проблема:
ОтветитьУдалитьпосле миграции с 2007 на 2010 не работает Sharepoint designer/ нажимаю действия сайта\изменить в Sharepoint Designer и выскакивает такое окно c написью
sorry the page you're looking for can't be found
в самом сайте дизайнер включен, в центре администрирования на уровне приложении дизайнер включен... как его включить???
Ошибка вроде не о том, что дизайнер не включен, а о том, что страница не найдена. Я бы открыл отдельно Дизайнер, а в нем подключился бы к сайту.
Удалитьхмм а как отдельно открыть дизайнер? я думал что он поверх шарика стоит... или его нужно дополнительно ставить?
ОтветитьУдалитьКогда я занимался шариком (5 лет назад), дизайнер - это была отдельная программа https://www.microsoft.com/ru-ru/download/details.aspx?id=35491
УдалитьПонял, огромное спасибо, большущие, как всегда проблема была мелочи. поставил подключается работает.
ОтветитьУдалить