Восстановление Altium On-Prem Enterprise Server с серверной частью Oracle

 

Parent page: Altium On-Prem Enterprise Server с бэкендом Oracle

Этот документ предназначен для ИТ-администратора, который выполняет восстановление данных Altium On-Prem Enterprise Server, когда Enterprise Server использует Oracle Database в качестве бэкенда. В нем приведены сведения об Enterprise Server, процедура восстановления в контексте использования Oracle, важная информация о системных требованиях, а также пример восстановления данных на платформе Microsoft Windows.

Для работы по этому руководству вам нужно общее понимание концепций баз данных Oracle и среды операционной системы Windows. Дополнительные сведения о том, как выполнить резервное копирование Enterprise Server и связанных с ним данных Oracle, см. в Backing up Altium On-Prem Enterprise Server with an Oracle Backend.

Обзор процесса восстановления

Восстановление Enterprise Server при использовании Oracle в качестве бэкенда зависит от того, как в вашей компании организовано управление базами данных Oracle. В одних компаниях базы данных Oracle работают на Windows Server, в других — используются целые дата-центры Oracle. Процесс восстановления обычно включает три шага, как показано на следующем изображении.

Важно выполнять шаги в том порядке, в котором они представлены.

Общий обзор процедуры восстановления Enterprise Server и базы данных Oracle.Общий обзор процедуры восстановления Enterprise Server и базы данных Oracle.

Допущения, принятые в этом документе

Хотя конфигурации Oracle могут отличаться от площадки к площадке, в этом документе приняты следующие допущения:

  1. Выполнено полное резервное копирование данных Enterprise Server и связанный дамп данных Oracle, как описано в документе Backing up Altium On-Prem Enterprise Server with an Oracle Backend.
  2. Восстановление выполняет ИТ-администратор. Как минимум пользователь, выполняющий восстановление Enterprise Server, должен иметь административные права на хост-машине.
  3. Для импорта данных Oracle должен присутствовать администратор баз данных (DBA). Как минимум пользователь, работающий по этому руководству, должен иметь полный доступ на чтение/запись для импорта и изменения корпоративной базы данных Oracle.
  4. В этом руководстве предполагается, что уже существует установленный Enterprise Server, настроенный и работающий с Oracle в качестве бэкенда. (См. раздел с примером для подробностей о том, как действовать в среде, где разворачивается новый Enterprise Server на машине и данные импортируются в этот экземпляр Enterprise Server).
  5. Oracle Schema и учетные данные Oracle-приложения, используемые на исходном и целевом серверах Oracle, должны совпадать.

Общий обзор архитектуры Enterprise Server

Как и другое ПО, рассчитанное на работу в Microsoft Windows, Enterprise Server — это многопоточное, многосервисное серверное приложение. Поскольку этот документ сосредоточен только на частях Enterprise Server, которые могут взаимодействовать с Oracle Database, следующее изображение упрощено и отражает общую архитектуру бэкенда Enterprise Server.

Общий обзор архитектуры Enterprise Server. Backend Storages Enterprise Server содержит большую часть бинарных данных заказчика, а Windows Services — это набор вспомогательных служб.Общий обзор архитектуры Enterprise Server. Backend Storages Enterprise Server содержит большую часть бинарных данных заказчика, а Windows Services — это набор вспомогательных служб.

Этот документ фокусируется на Backend Storages, поскольку данные в этом блоке резервируются, при необходимости мигрируют на другую машину, а затем восстанавливаются на той же или другой машине. Внутри Backend Storages находятся следующие элементы:

  • Databases – содержит метаданные, такие как привязка посадочного места компонента и условного графического обозначения, параметры, пути к файлам, ссылки на источники данных по цепочке поставок компонентов и т. д. Эти сведения могут храниться в базе данных Firebird или Oracle.
  • File Storage – эта область File Storage хранит бинарные данные в VCS-репозитории Enterprise Server. Эти бинарные данные включают, например, документы проектов PCB и схем, посадочные места, символы, Draftsman и другие нативные или ненативные документы Enterprise Server.

Общий обзор Altium Restore Tool

Инструмент восстановления Altium называется avbackup.exe. Это та же утилита, которая используется для резервного копирования и восстановления Enterprise Server. Это утилита командной строки, которую ИТ-администраторы могут запускать для восстановления данных Enterprise Server. avbackup.exe — это та же утилита, используемая для восстановления, когда Enterprise Server настроен с бэкендом базы данных Firebird по умолчанию, либо когда в качестве бэкенда используется база данных Oracle.

При использовании avbackup.exe в реализации Enterprise Server, где применяется Oracle Database, администраторам следует учитывать следующее:

  1. avbackup.exeNOT не поддерживает восстановление метаданных Enterprise Server в Oracle Database. Эта функция работает только в реализациях Enterprise Server с бэкендом Firebird, который изначально был автоматически настроен установщиком Enterprise Server.
  2. avbackup.exe принимает Zip-файл, который он генерирует при использовании в качестве инструмента резервного копирования. Этот Zip-файл содержит все бинарные данные Enterprise Server.
  3. Enterprise Server должен быть запущен. avbackup.exe автоматически остановит все службы Enterprise Server (включая службы IIS) во время восстановления данных, а затем перезапустит все остановленные службы после успешного восстановления.

Пример восстановления данных Enterprise Server с Oracle-бэкендом на платформе Windows

В этом примере инструкции также ориентированы на небольшие компании, у которых может не быть выделенного администратора баз данных Oracle (DBA), но при этом есть необходимость восстановить Enterprise Server и связанные данные Oracle в своей сети. Следующие шаги показывают, как базовую резервную копию Enterprise Server и связанной базы данных Oracle можно восстановить на новую машину и в новую базу данных Oracle.

При использовании Enterprise Server с Oracle в качестве бэкенд-базы данных Enterprise Server поддерживает Oracle версии 19c.
В качестве альтернативы более опытные ИТ-администраторы могут написать batch-файлы, которые автоматически выполняют следующую процедуру.

Необходимые элементы

  • Заранее существующий рабочий экземпляр Enterprise Server с Oracle-бэкендом.
  • Заранее существующие папки и источники данных:
    • Папки, в которых будут располагаться данные Enterprise Server и Oracle, должны уже существовать и содержать копию Zip-файла резервной копии Enterprise Server и Oracle-файл .DMP.
  • Административный доступ к хост-машине Enterprise Server. Это требуется для корректного запуска утилиты командной строки резервного копирования Enterprise Server (avbackup.exe).
  • Соответствующий DBA-доступ к серверу Oracle (т. е. добавить учетную запись Windows пользователя в роль sysDBA в среде Windows).

Процедура восстановления

  1. Если заранее не был настроен экземпляр Enterprise Server с Oracle-бэкендом, прочитайте документ Installing Altium On-Prem Enterprise Server with an Oracle Backend — там приведен пример настройки Enterprise Server с использованием Oracle-бэкенда на новой машине.
  2. На этом этапе у вас уже должен быть существующий экземпляр Enterprise Server с Oracle — либо после новой, либо после предыдущей установки.
  3. На хост-машине Enterprise Server:
    1. Создайте папку для восстановления (удобно использовать единые пути, например: C:\Backups). Поместите Zip-файл резервной копии Enterprise Server в эту папку.
    2. Восстановите данные Enterprise Server, запустив инструмент avbackup.exe от имени администратора. Инструмент находится в папке C:\Program Files (x86)\Altium\Altium365\Tools\BackupTool.
    3. Остановите службы IIS Enterprise Server или выключите хост-машину Enterprise Server. Это предотвратит любые непреднамеренные операции записи в базу данных Oracle со стороны служб Enterprise Server.
Дополнительные сведения об использовании инструмента восстановления см. в Backing up Altium On-Prem Enterprise Server with an Oracle Backend.

Примеры команд восстановления:

  • Командная строка для перехода в каталог инструмента резервного копирования: cd C:\Program Files (x86)\Altium\Altium365\Tools\BackupTool\.
  • Командная строка для восстановления данных Enterprise Server из файла с именем Q2_Backup.zip, который хранится в папке C:\Backups: avbackup restore -z "C:\Backups\Q2_Backup.zip" -i "C:\Program Files (x86)\Altium\Altium365\LocalVault.ini".
  1. На хост-машине Oracle Database:
    1. Создайте папку для восстановления и поместите в нее Oracle-файл .dmp (удобно использовать единые пути, например: C:\Backups).
    2. Удалите (drop/delete) существующую схему и учетную запись пользователя из базы данных Oracle.
Enterprise Server инициализирует внутренние переменные SYSTEM и другие параметры Enterprise Server во время установки, а затем записывает эту информацию в базу данных Oracle. Это происходит только при совершенно новой установке Enterprise Server, но не при обновлении. Поскольку переменные SYSTEM и другие параметры Enterprise Server могли измениться между старой и новой установкой Enterprise Server, гораздо проще удалить существующую учетную запись пользователя, схему и ее данные из базы данных Oracle и создать новую учетную запись пользователя как минимум с тем же именем, которое было назначено Enterprise Server в исходной базе данных Oracle. Когда файл .dmp будет импортирован в базу данных Oracle, импортированные переменные SYSTEM и параметры Enterprise Server будут соответствовать тем, что хранятся в Zip-файле резервной копии Enterprise Server.

Удаление учетной записи пользователя Oracle и связанной с ней схемы можно выполнить следующим образом. В этом примере мы удалим существующую учетную запись пользователя AESUSER313 и связанную с ней схему из базы данных Oracle в Microsoft Windows:

  1. Запустите командную строку с правами администратора.
  2. Остановите службы IIS, если они присутствуют на машине Oracle, командой: net stop WAS, затем нажмите Y и Enter.
  3. Подключитесь к Oracle DB, запустив сеанс SqlPlus:

sqlplus / as sysdba

shutdown immediate;

startup restrict;

  1. Удалите схему, связанную с Enterprise Server (в этом примере AESUSER313 — имя схемы, которую нужно удалить):

drop user AESUSER313 cascade;

  1. Снова активируйте БД в обычном режиме — либо перезагрузив машину, либо используя следующие команды:

shutdown immediate;

startup;

  1. Создайте идентичную схему на сервере Oracle и назначьте расширенные права:
    1. Откройте командную строку от имени администратора и введите:

sqlplus / as sysdba;

CREATE user AESUSER313 identified by “Altium”;

GRANT ALL PRIVILEGES TO AESUSER313;

GRANT IMP_FULL_DATABASE TO AESUSER313;

  1. Либо вы можете временно выдать этому пользователю роль DBA, импортировать файлы, а затем отозвать эту привилегию, как показано ниже:

GRANT DBA TO AESUSER313;

  1. После успешного импорта БД отзовите привилегии DBA:

revoke DBA from AESUSER313;

  1. Восстановите данные Oracle (в этом разделе предполагается, что учетная запись пользователя и схемы обе называются AESUSER313 и имеют пароль Altium):
    1. Запустите командную строку с правами администратора
    2. Остановите серверы IIS командой:

net stop WAS

  1. Импортируйте данные Oracle. Пример команды импорта:

imp AESUSER313/Altium@xe file=c:\Backups\AESUSER313.dmp log=c:\Backups\AESUSER313_import.log fromuser=AESUSER313 touser=AESUSER313

где,

AESUSER313 – пользователь, имеющий полные привилегии на схему и права доступа к БД.

Altium – пароль учетной записи пользователя Oracle, связанной с Enterprise Server.

xe – сетевое имя службы целевой БД, указанное в tnsnames.ora.

file = c:\Backups\AESUSER313.dmp – расположение резервной копии.

log = c:\Backups\AESUSER313_import.log – журнал восстановления (необязательно).

fromuser=AESUSER313 – владелец схемы резервной копии.

touser=AESUSER313 – новый владелец схемы (если владельцы различаются, необходимо создать нового пользователя с соответствующими привилегиями и ролями).

  1. Проверьте целостность данных.
    1. Проверьте файл tnsname.ora. Необходимо обновить имя сетевой службы (если вы изменили сервер БД).
    2. Проверьте настройки сервера IIS. Убедитесь, что значение в столбце «Host name» в привязках (Bindings) в IIS Manager актуально. Там должно быть текущее полное доменное имя (FQDN) вашего Enterprise Server.
    3. Проверьте значения следующих параметров в файле C:\Program Files (x86)\Altium\Altium365\LocalVault.ini.
      1. Domain – имя вашего домена.
      2. WebsiteDomain – FQDN вашего Enterprise Server.
      3. DataSourceType=Oracle – если используется Oracle DB.
      4. User=AESUSER313 – владелец схемы.
      5. Password=Altium – пароль пользователя, заданного DBA.
      6. DBLocation=FQDN или ip_address:1521 – адрес вашего сервера БД.
      7. DatabaseName=xe – текущее имя сетевой службы БД, указанное в tnsnames.ora.

Заключение

Хотя приведённый выше пример включает дополнительные детали, относящиеся к подключению и работе с Oracle Database, для восстановления данных вашего Enterprise Server есть всего три ключевых шага:

  1. Шаг 1 — остановить службы IIS и пулы приложений IIS для Enterprise Server.
  2. Шаг 2 — восстановить данные Enterprise Server .
  3. Шаг 3 — восстановить данные Oracle, связанные с Enterprise Server.

Выполнение этой процедуры в указанном порядке значительно снижает вероятность повреждения данных из‑за несоответствия данных Oracle и бинарных данных Enterprise Server.

DBA может потребоваться переназначить табличные пространства (tablespaces) импортируемых метаданных на схему, назначенную учётной записи Oracle DB для Enterprise Server, иначе импорт Oracle DB может не сработать. Особенно если для создания резервной копии Oracle DB использовались команды IMPDP/EXPDP вместо IMP/EXP.

Пример:

  1. Создайте ссылку на каталог; обратите внимание, что это не создаёт физическую папку на HDD. Это лишь указатель в памяти Oracle на эту папку. Сначала нужно вручную создать указанную папку на HDD, затем скопировать её путь в заполнитель FOLDERPATH ниже.
    1. CREATE OR REPLACE DIRECTORY MyDirectoryName AS 'FOLDERPATH’;
  2. drop user ALTIUM cascade;
  3. create user ALTIUM identified by PASSWORD;
  4. grant DBA to ALTIUM;
  5. grant connect, resource, create session to ALTIUM;
  6. impdp ALTIUM/PASSWORD@XE full=y directory=MyDirectoryName dumpfile=DMPFILENAME.DMP logfile=LOGFILENAME.log remap_tablespace=ALTIUM:USERS
AI-LocalizedЛокализовано с помощью ИИ
Если вы обнаружили проблему, выделите текст/изображение и нажмитеCtrl + Enter, чтобы отправить нам свой отзыв.
Content