Восстановление
Parent page: Altium On-Prem Enterprise Server с Oracle в качестве бэкенда
Этот документ предназначен для ИТ-администратора, который восстанавливает данные Altium On-Prem Enterprise Server в случае, когда Enterprise Server использует Oracle Database в качестве бэкенда. В нём приведены сведения об Enterprise Server, процедура восстановления в контексте использования Oracle, важная информация о системных требованиях, а также пример восстановления данных на платформе Microsoft Windows.
Обзор процесса восстановления
Восстановление Enterprise Server при использовании Oracle в качестве бэкенда зависит от того, как в вашей компании организовано управление базами данных Oracle. В одних компаниях базы данных Oracle работают на Windows Server, в других — используются полноценные дата-центры Oracle. Процесс восстановления обычно включает три шага, как показано на следующем изображении.
Общий обзор процедуры восстановления Enterprise Server и базы данных Oracle.
Предположения, используемые в этом документе
Хотя конфигурации Oracle могут отличаться от площадки к площадке, в этом документе используются следующие предположения:
- Выполнено полное резервное копирование данных Enterprise Server и связанный дамп данных Oracle, как описано в документе Backing up Altium On-Prem Enterprise Server with an Oracle Backend.
- Восстановление выполняет ИТ-администратор. Как минимум пользователь, выполняющий восстановление Enterprise Server, должен иметь административные права на хост-машине.
- Для выполнения импорта данных Oracle должен присутствовать администратор баз данных (DBA). Как минимум пользователь, работающий по этому руководству, должен иметь полный доступ на чтение/запись для импорта и изменения корпоративной базы данных Oracle.
- В этом руководстве предполагается, что уже существует установленный Enterprise Server, настроенный и работающий с Oracle в качестве бэкенда. (См. раздел с примером для подробностей о том, как действовать в среде, где разворачивается новый Enterprise Server на машине и данные импортируются в этот экземпляр Enterprise Server).
- Oracle Schema и учётные данные Oracle-приложения, используемые на исходном и целевом серверах Oracle, должны совпадать.
Общий обзор архитектуры Enterprise Server
Как и другое ПО, рассчитанное на работу в Microsoft Windows, Enterprise Server — это многопоточное, многосервисное серверное приложение. Поскольку этот документ сосредоточен только на частях Enterprise Server, которые могут взаимодействовать с базой данных Oracle, следующее изображение упрощено и отражает общую архитектуру бэкенда Enterprise Server.
Общий обзор архитектуры 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
Инструмент восстановления Altium называется avbackup.exe. Это та же утилита, которая используется для резервного копирования и восстановления в Enterprise Server. Это утилита командной строки, которую ИТ-администраторы могут запускать для восстановления данных Enterprise Server. avbackup.exe — это та же утилита, используемая для восстановления, когда Enterprise Server настроен с бэкендом базы данных Firebird по умолчанию, либо когда в качестве бэкенда используется база данных Oracle.
При использовании avbackup.exe в реализации Enterprise Server, где в качестве бэкенда используется Oracle Database, администраторам следует учитывать следующее:
- avbackup.exeNOT не поддерживает восстановление метаданных Enterprise Server в базу данных Oracle. Эта функция работает только в реализациях Enterprise Server с бэкендом Firebird, который изначально был автоматически настроен установщиком Enterprise Server.
- avbackup.exe принимает Zip-файл, который он генерирует при использовании в качестве инструмента резервного копирования. Этот Zip-файл содержит все бинарные данные Enterprise Server.
- 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, должны уже существовать и содержать копию Zip-файла резервной копии Enterprise Server и Oracle-файл .DMP.
- Административный доступ к хост-машине Enterprise Server. Это требуется для корректного запуска утилиты командной строки резервного копирования Enterprise Server (avbackup.exe).
- Соответствующий доступ DBA к серверу Oracle (т. е. добавить Windows-учётную запись пользователя в роль
sysDBAв среде Windows).
Процедура восстановления
- Если заранее не был настроен экземпляр Enterprise Server с Oracle в качестве бэкенда, прочитайте документ Installing Altium On-Prem Enterprise Server with an Oracle Backend — там приведён пример настройки Enterprise Server с Oracle в качестве бэкенда на новой машине.
- На этом этапе у вас уже должен быть существующий экземпляр Enterprise Server с Oracle — либо после новой установки, либо после предыдущей.
- На хост-машине Enterprise Server:
- Создайте папку для восстановления (удобно использовать единые пути, например: C:\Backups). Поместите в эту папку Zip-файл резервной копии Enterprise Server.
- Восстановите данные Enterprise Server, запустив инструмент avbackup.exe от имени администратора. Инструмент находится в папке C:\Program Files (x86)\Altium\Altium NEXUS Server\Tools\BackupTool.
- Остановите службы IIS Enterprise Server либо выключите хост-машину Enterprise Server. Это предотвратит любые непреднамеренные операции записи в базу данных Oracle со стороны служб Enterprise Server.
- На хост-машине Oracle Database:
- Создайте папку для восстановления и поместите в неё Oracle-файл
.dmp(удобно использовать единые пути, например: C:\Backups). - Удалите (drop/delete) существующую схему и учётную запись пользователя из базы данных Oracle.
- Создайте папку для восстановления и поместите в неё Oracle-файл
Удаление учётной записи пользователя Oracle и связанной с ней схемы можно выполнить следующим образом. В этом примере мы удалим существующую учётную запись ANSUSER313 и связанную с ней схему из базы данных Oracle в Microsoft Windows:
- Запустите командную строку с правами администратора.
- Остановите службы IIS, если они присутствуют на машине Oracle, командой: net stop WAS, затем нажмите Y и Enter.
- Подключитесь к Oracle DB, запустив сеанс SqlPlus:
sqlplus / as sysdba
shutdown immediate;
startup restrict;
- Удалите схему, связанную с Enterprise Server (в этом примере ANSUSER313 — имя схемы, которую нужно удалить):
drop user ANSUSER313 cascade;
- Снова активируйте БД в обычном режиме — либо перезагрузив машину, либо используя следующие команды:
shutdown immediate;
startup;
- Создайте идентичную схему на сервере Oracle и назначьте расширенные права:
- Откройте командную строку от имени администратора и введите:
sqlplus / as sysdba;
CREATE user ANSUSER313 identified by “Altium”;
GRANT ALL PRIVILEGES TO ANSUSER313;
GRANT IMP_FULL_DATABASE TO ANSUSER313;
- Либо вы можете временно выдать этому пользователю роль DBA, импортировать файлы, а затем отозвать эту привилегию, как показано ниже:
GRANT DBA TO ANSUSER313;
- После успешного импорта БД отзовите привилегии DBA:
revoke DBA from ANSUSER313;
- Восстановите данные Oracle (в этом разделе предполагается, что и учётная запись пользователя, и схемы называются ANSUSER313, а пароль — Altium):
- Запустите командную строку с правами администратора
- Остановите серверы IIS командой:
net stop WAS
- Импортируйте данные Oracle. Пример команды импорта:
imp ANSUSER313/Altium@xe file=c:\Backups\ANSUSER313.dmp log=c:\Backups\ANSUSER313_import.log fromuser=ANSUSER313 touser=ANSUSER313
где,
ANSUSER313 – пользователь, имеющий полные привилегии на схему и права доступа к БД.
Altium – пароль учётной записи пользователя Oracle, связанной с Enterprise Server.
xe – сетевое имя службы целевой БД, указанное в tnsnames.ora.
file = c:\Backups\ANSUSER313.dmp – расположение резервной копии.
log = c:\Backups\ANSUSER313_import.log – журнал восстановления (необязательно).
fromuser=ANSUSER313 – владелец схемы резервной копии.
touser=ANSUSER313 – новый владелец схемы (если владельцы различаются, необходимо создать нового пользователя с соответствующими привилегиями и ролями).
- Проверьте целостность данных.
- Проверьте файл tnsname.ora. Вам следует обновить имя сетевой службы (если вы изменили сервер БД).
- Проверьте настройки сервера IIS. Убедитесь, что значение в столбце “Host name” в привязках (bindings) в IIS Manager актуально. Там должно быть текущее полное доменное имя (FQDN) вашего Enterprise Server.
- Проверьте значения следующих параметров в файле C:\Program Files (x86)\Altium\Altium NEXUS Server\LocalVault.ini.
- Domain – имя вашего домена.
- WebsiteDomain – FQDN вашего Enterprise Server.
- DataSourceType=Oracle – если используется Oracle DB.
- User=ANSUSER313 – владелец схемы.
- Password=Altium – пароль пользователя, заданный DBA.
- DBLocation=FQDN или ip_address:1521 – адрес вашего сервера БД.
- DatabaseName=xe – текущее имя сетевой службы БД, указанное в tnsnames.ora.
Заключение
Хотя приведенный выше пример включает дополнительные сведения, относящиеся к подключению и работе с Oracle Database, для восстановления данных вашего Enterprise Server есть всего три ключевых шага:
- Шаг 1 — остановить службы IIS и пулы приложений IIS для Enterprise Server.
- Шаг 2 — восстановить данные Enterprise Server .
- Шаг 3 — восстановить данные Oracle, связанные с Enterprise Server.
Выполнение этой процедуры в описанном порядке значительно снижает вероятность повреждения данных из‑за несоответствия между базой данных Oracle и двоичными данными Enterprise Server.