Методика переведення роботи користувачів на іншу інформаційну базу
У процесі роботи виникає потреба перевести користувачів на роботу з іншою інформаційною базою, наприклад під час переходу на іншу версію платформи (наприклад, перейти з версії 1С:Підприємство 8.1 на версію 1С:Підприємство 8.2) або під час переходу на іншу СУБД (наприклад, перехід із файлового варіанту на клієнт-серверний варіант).Опис методики міграції. Доопрацювання вихідної інформаційної бази. Розгортання нової інформаційної бази та налаштування регулярного обміну. Процес міграції. Опис переходу на прикладі переходу на нову версію 1С:Підприємства. Доопрацювання конфігурації. Додавання механізму обміну. Створення копії інформаційної бази. Розгортання нової інформаційної бази. Експлуатація. Вимкнення синхронізації з попередньою версією інформаційної бази
Доопрацювання вихідної інформаційної бази
Розгортання нової інформаційної бази та налаштування регулярного обміну
Опис переходу на прикладі переходу на нову версію 1С:Підприємства
Створення копії інформаційної бази
Розгортання нової інформаційної бази
Вимкнення синхронізації з попередньою версією інформаційної бази
У процесі роботи виникає потреба перевести користувачів на роботу з іншою інформаційною базою, наприклад під час переходу на іншу версію платформи (наприклад, перейти з версії 1С:Підприємство 8.1 на версію 1С:Підприємство 8.2) або під час переходу на іншу СУБД (наприклад, перехід із файлового варіанту на клієнт-серверний варіант).
Це можна зробити двома способами:
- Виконати конвертацію (для переходу на нову версію) або вивантаження/завантаження (для переходу на іншу СУБД) наявної інформаційної бази й продовжити роботу з інформаційною базою в новому варіанті.
Для виконання такого переходу необхідно виконати такі дії:
- Зупинити роботу наявної інформаційної бази;
- Виконати роботи з перетворення інформаційної бази (переведення на нову версію 1С:Підприємства, переведення на нову СУБД, оновлення конфігурації);
- Продовжити роботу.
Цей метод може бути непридатним для використання, якщо режим роботи підприємства не допускає простоїв на тривалі регламентні процедури або необхідний період дослідної експлуатації системи одночасно у двох інформаційних базах (на одній та іншій СУБД) і при цьому потрібно забезпечити повернення системи на вихідну інформаційну базу без втрати даних, введених за час експлуатації в новій інформаційній базі. У цьому разі можна використати наступний варіант міграції.
- Створити нову інформаційну базу, працювати в новій інформаційній базі, виконуючи синхронізацію даних між базами.
Для виконання такого переходу необхідно виконати такі дії:
- Виконати доопрацювання, що забезпечують працездатність поточної інформаційної бази в новій версії 1С:Підприємства або на новій СУБД (якщо вони необхідні);
- Розгорнути нову інформаційну базу та налаштувати обмін даними між двома інформаційними базами;
- Виконати перехід на нову інформаційну базу;
- За потреби виконати повернення до вихідної інформаційної бази або повністю перейти до роботи з новою інформаційною базою.
Цей метод забезпечить мінімальний час простою наявної системи, ідентичність даних у двох інформаційних базах, можливість у будь-який момент часу безболісно перейти до використання вихідної інформаційної бази без втрати даних.
Цю статтю присвячено опису другого способу міграції між інформаційними базами.
Увесь процес міграції складається з кількох кроків, опис яких наведено нижче. В описі цих кроків будуть використані такі терміни:
- Вихідна інформаційна база – інформаційна база, з якої планується перехід.
- Нова інформаційна база – інформаційна база, яку планується експлуатувати на новій версії 1С:Підприємства або на іншій СУБД.
- Допоміжна конфігурація – окрема конфігурація, що містить метадані, необхідні для роботи обміну даними.
Увага!
Перед будь-якими доопрацюваннями вихідної конфігурації або інформаційної бази – виконайте резервне копіювання інформаційної бази, а всі експерименти виконуйте на копії реальної інформаційної бази.
Опис методики міграції
Цей розділ містить докладний опис методики міграції між різними інформаційними базами за допомогою створення нової інформаційної бази.
Доопрацювання вихідної інформаційної бази
Доопрацювання можна розділити на дві групи:
- Необхідні для забезпечення працездатності системи в нових умовах. Ці доопрацювання необхідно виконувати за потреби.
- Необхідні для здійснення синхронізації двох інформаційних баз. Ці доопрацювання слід виконувати завжди.
Доопрацювання для забезпечення працездатності
Доопрацювання прикладного рішення можуть знадобитися, наприклад, у разі переходу на іншу СУБД. Визначити необхідність доопрацювань можна після ознайомлення з додатком 8. Особливості роботи з різними СУБД книги 1С:Підприємство 8.2. Посібник розробника.
Усі зміни слід виконувати так, щоб мінімально зачіпати структуру метаданих, оскільки така зміна може потребувати значного часу на операцію реструктуризації інформаційної бази.
Доопрацювання для забезпечення синхронізації даних
Щоб дані обох інформаційних баз були ідентичними (це необхідно для того, щоб можна було в будь-який момент часу виконати перехід до використання вихідної інформаційної бази без втрати даних), необхідно налаштувати обмін даними між інформаційними базами. Опис механізмів обміну даними наведено в главі 15. Механізми обміну даними книги 1С:Підприємство 8.2. Посібник розробника, а рекомендації щодо роботи з цими механізмами можна отримати на диску ІТС у розділі Методичні рекомендації з конфігурування – Механізм обміну даними.
Для реєстрації змінених об'єктів слід використовувати спеціальний об'єкт метаданих - ПланОбміну. Склад плану обміну у вихідній і новій інформаційних базах повинен включати всі об'єкти конфігурації. При цьому не слід встановлювати у використовуваного плану обміну прапорець Розподілена інформаційна база, оскільки в розв'язуваному завданні не можна виділити головний вузол (на різних етапах робота ведеться в різних інформаційних базах). Крім того, використання розподіленої інформаційної бази неможливе у разі переходу з 1С:Підприємства версії 8.1 на 1С:Підприємство версії 8.2. Рекомендується на час переходу не виконувати змін у конфігурації, а за потреби внесення таких змін виконувати синхронізацію конфігурацій іншими способами.
Необхідно реалізувати механізми вивантаження/завантаження даних у файли обміну (або будь-який інший механізм взаємодії між двома інформаційними базами).
Якщо обмін повинен виконуватися в автоматичному режимі, слід використовувати регламентні завдання, докладніше про які можна прочитати в главі 18. Механізм завдань книги 1С:Підприємство 8.2. Посібник розробника.
Розгортання нової інформаційної бази та налаштування регулярного обміну
Після того як вихідну інформаційну базу підготовлено до переходу (включно зі створенням плану обміну), необхідно виконати резервну копію вихідної бази й із цієї копії створити нову інформаційну базу.
Потім в обох інформаційних базах слід налаштувати механізм автоматичного двостороннього обміну даними (механізми якого були створені під час підготовки інформаційної бази до переходу) і перевірити його працездатність.
Під час використання автоматичного обміну необхідно виконати налаштування розкладу роботи регламентного завдання так, щоб обмін відбувався максимально швидко й не перешкоджав роботі користувачів.
Процес міграції
Увесь процес міграції можна розділити на кілька етапів:
- Після організації нової інформаційної бази виконується робота користувачів у вихідній інформаційній базі з одночасним передаванням нових даних у нову інформаційну базу.
- Виконується переведення всіх користувачів на роботу в новій версії, дані автоматично передаються в попередню версію (для збереження актуальних даних у разі потреби повернення до попередньої версії). Перехід виконується за допомогою редагування наявного запису про інформаційну базу в списку спільних інформаційних баз. У цьому разі перехід буде виконано максимально непомітно для користувачів.
- Якщо в процесі експлуатації виникають проблеми з новою версією інформаційної бази – виконується швидке переведення користувачів назад на попередню версію інформаційної бази.
- Виконується модифікація нової інформаційної бази з метою усунення виявлених недоліків, після чого повторюється переведення користувачів.
Механізм автоматичного передавання даних дасть змогу підтримувати дані інформаційних баз у синхронному стані для того, щоб у будь-який момент часу можна було виконати перехід на вихідну інформаційну базу без втрати даних.
Після того як стане зрозуміло, що повернення до вихідної інформаційної бази більше не актуальне, можна вимкнути механізм обміну. Після цього вихідна та нова інформаційні бази припинять виконувати синхронізацію даних, і повернення до вихідної інформаційної бази стане неможливим.
Опис переходу на прикладі переходу на нову версію 1С:Підприємства
Доопрацювання конфігурації
Для переходу на 1С:Підприємство версії 8.2 слід ознайомитися з розділом Перехід на версію 8.2 з версій 8.1 і 8.0 файлу V8Update.htm, що входить до складу дистрибутива версії 1С:Підприємство 8.2.
Увага!
Якщо для доопрацювання конфігурації необхідно вносити зміни до метаданих, що впливають на структуру таблиць бази даних, то це слід робити у версії вихідної конфігурації. В іншому разі буде неможливо виконувати обмін даними за допомогою планів обміну.
Додавання механізму обміну
Для забезпечення можливості синхронізації даних між різними версіями інформаційної системи у вихідній і новій інформаційних базах організовується обмін даними за допомогою планів обміну. Для цього слід об'єднати вихідну конфігурацію з конфігурацією, що додається до цієї статті (допоміжна конфігурація).
Для цього слід виконати таке:
- Виконати резервну копію вихідної інформаційної бази (засобами конфігуратора або СУБД).
- Виконати об'єднання (меню Конфігурація – Порівняти/об'єднати з конфігурацією з файлу) вихідної та допоміжної конфігурацій. Під час виконання об'єднання слід скинути прапорці для всіх об'єктів, крім плану обміну Міграція, для якого також слід встановити режим об'єднання Взяти з файлу.
- Потім необхідно включити до складу плану обміну Міграція усі об'єкти конфігурації (при цьому до нової інформаційної бази будуть переноситися всі об'єкти вихідної інформаційної бази).
Створення копії інформаційної бази
Перед створенням копії інформаційної бази слід виконати низку підготовчих операцій:
- У плані обміну Міграція (щоб відкрити форму списку плану обміну, слід за допомогою команди меню Операції – План обміну - Міграція між інформаційними базами) слід налаштувати наперед визначений вузол обміну:
- Код: Джерело.
- Найменування: Вихідна ІБ.
- У плані обміну Міграція створіть вузол обміну, що описує нову інформаційну базу, і налаштуйте його:
- Код: Приймач.
- Найменування: Додаткова ІБ.
- Шлях вивантаження: вкажіть шлях до каталогу, який буде доступний для читання й запису для обох конфігурацій.
- Шлях завантаження: вкажіть шлях до каталогу, який буде доступний для читання й запису для обох конфігурацій.
Видаліть реєстрацію змін для нової інформаційної бази – для цього встановіть курсор на елемент плану обміну з кодом Приймач і натисніть кнопку Видалити реєстрацію.
Створіть копію вихідної інформаційної бази. Це можна зробити як засобами СУБД (якщо використовується клієнт-серверний варіант), так і скопіювавши файл 1Cv8.1CD (якщо використовується файловий варіант). При цьому необхідно пам'ятати, що для створення копії інформаційної бази у файловому варіанті всі користувачі повинні завершити роботу з цією базою.
Розгортання нової інформаційної бази
Підготуйте інфраструктуру до розгортання нової інформаційної бази:
- Створіть нову інформаційну базу в новій версії 1С:Підприємства. Для цього скористайтеся файлом із копією інформаційної бази, створеною на попередньому кроці.
- Відкрийте нову інформаційну базу за допомогою Конфігуратора нової версії 1С:Підприємства. За потреби дайте ствердну відповідь на запитання, що стосуються конвертації інформаційної бази.
- Відкрийте нову базу в режимі 1С:Підприємства. Під час переходу на версію 1С:Підприємство 8.2 необхідно запустити товстий клієнт у режимі звичайного застосунку.
- Відкрийте план обміну Міграція (меню Операція – План обміну - Міграція між інформаційними базами).
- Замініть реквізити планів обміну так, щоб у наперед визначеного плану обміну код став дорівнювати Приймач, найменування Додаткова ІБ, а в другого плану обміну код став дорівнювати Джерело, а найменування Вихідна ІБ.
- Тепер наші інформаційні бази налаштовані на двосторонній обмін даними.
Експлуатація
У процесі експлуатації вихідної та нової інформаційної бази необхідно синхронізувати дані, що вводяться в різних інформаційних базах. Для цього необхідно в плані обміну Міграція регулярно виконувати процедури завантаження та вивантаження даних, наприклад за допомогою команд форми списку плану обміну. Якщо механізм ручного обміну не влаштовує, слід налаштувати автоматичний обмін даними за допомогою регламентних завдань.
Під час експлуатації двох систем слід пам'ятати, що в процедурах завантаження/вивантаження даних не передбачено механізму розв'язання колізій, тобто дані завжди приймаються, незалежно від того, чи є зміна цих даних у поточній інформаційній базі, чи ні (іншими словами – не слід допускати одночасної роботи користувачів в обох інформаційних базах). Це пов'язано з тим, що в загальному випадку незрозуміло, яка з двох інформаційних баз є головною, а яка – допоміжною. Однак якщо в базі-приймачі даних для прийнятого об'єкта зареєстровано зміну, про це виконується запис у журналі реєстрації такого змісту: Дані було змінено, але відбулося заміщення даними з інформаційної бази Ім'яБазиДжерела.
Щоб перевести всіх користувачів на нову версію інформаційної бази, слід змінити розташування інформаційної бази в записі, що описує інформаційну базу, яка знаходиться у списку спільних інформаційних баз.
Вимкнення синхронізації з попередньою версією інформаційної бази
У разі якщо необхідно припинити синхронізацію даних із попередньою версією інформаційної бази, слід виконати таке:
- Припинити виконувати операції вивантаження/завантаження в плані обміну Міграція (заборонити регламентне завдання, якщо таке використовувалося для автоматичного обміну даними);
- Очистити склад плану обміну Міграція або видалити його з конфігурації.