У даній статті я поділюся досвідом, отриманим в ході здійснення «помилок важких» при перенесенні баз даних SharePoint з одного віддаленого сервера SQL на інший.
компоненти SharePoint
- ферма SharePoint
- База даних конфігурації - єдине місце, де зберігається конфігурація ферми SharePoint, саме тут міститься інформація про інші бази даних і серверах додатків. При додаванні нового сервера в ферму SharePoint установник насамперед питає, до якої базі даних конфігурації підключатися.
- Бази даних контенту - в них зберігається вміст сайтів ферми.
- Сервера додатків - власне, це і є сам SharePoint; складається з безлічі служб, одні виконують обробку HTTP-запитів користувачів, інші - всякі фонові завдання.
Хоча всі компоненти SharePoint можна встановлювати на один сервер, кращою практикою вважається рознести сервер додатків і сервер баз даних.
Переміщення баз даних контенту
Переміщення всіх баз даних SharePoint
Як згадувалося вище, SharePoint використовує не тільки легко переносяться бази даних контенту, але і центральну базу конфігурації, яка прив'язана до імені сервера, а тому так просто не переноситься.
Якщо пошукати в інтернеті, то можна знайти такий спосіб перенесення бази даних конфігурації: пропонують після перенесення баз даних на новий сервер виконати команди:
stsadm -o deleteconfigdb
stsadm -o setconfigdb -connect -databaseserver NEWSERVER -databasename SharePoint_Config -farmuser DOMAIN \ USER -farmpassword PASSWORD
Але по їх виконанню нас чекає розчарування:
Значення не може бути невизначеним.
Ім'я параметра: str
І ми отримаємо не працюючу конфігурацію, і врятує нас тільки відкат на резервну копію бази SharePoint_Config.
Отже, що працює алгоритм перенесення всіх баз даних SharePoint з одного сервера Microsoft SQL на інший.
2. Відновлення БД з зроблених резервних копій на новому сервері.
3. Виконання команди:
c: \ Program Files \ Common Files \ Microsoft Shared \ Web Server Extensions \ 14 \ BIN \ stsadm.exe -o renameserver -oldservername OLDSERVER -newservername NEWSERVER
Цей алгоритм застосовується лише в тому випадку, якщо ім'я нового сервера в конфігурації SharePoint не згадується (на сторінці вузла адміністратора /_admin/FarmServers.aspx), тобто на новому сервері:
- немає компонентів сервера додатків SharePoint
- немає інших БД SharePoint
Якщо ваша конфігурація ферми SharePoint не підходить для виконання наведеного вище алгоритму, її можна привезти до необхідних умов, виконавши, наприклад,
- Установку сервера додатків на іншому сервері
- Видалення компонент сервера додатків зі старого сервера
- Чистий перенесення баз даних за вищенаведеним алгоритмом
- Якщо знадобиться, знову установка компонент сервера додатків на старому сервері, але вже із зазначенням нового сервера в якості БД.