Импорт схемы Platex

 

В данной части руководства будет рассказано о том, как правильно сделать импорт схемы PLATEX в СУБД Oracle. На данном этапе у вас должен быть подготовлен файл platex.dmp для импорта, набор скриптов (pre_imp.sql, grants.sql, post_imp.sql), набор библиотек (shell.so, libtariff.so). Все нижеописанные операции необходимо осуществлять от пользователя "oracle".

 

Шаг 1. Подготовка к импорту


[oracle] sqlplus / as sysdba
(sys) @pre_imp
(sys) exit

 

Шаг 2. Импорт схемы PLATEX

Прежде всего необходимо поместить файл platex.dmp в директорию $ORACLE_BASE/admin/$ORACLE_SID/dpdump/. В качестве альтернативного варианта можно использовать свою директорию, но ее необходимо будет зарегистрировать. Пример создания своей директории для импорта:


[oracle] sqlplus / as sysdba
(sys) create or replace directory imp_dir as 'ПОЛНЫЙ_ПУТЬ_ДИРЕКТОРИИ';
(sys) grant read, write on directory imp_dir to platex;
(sys) exit

 

Далее можно запускать импорт схемы PLATEX:


[oracle] impdp platex/ directory=data_pump_dir dumpfile=platex.dmp schemas=platex

 

Шаг 3. Завершение импорта

После импорта схемы необходимо выполнить скрипт post_imp.sql:


[oracle] sqlplus / as sysdba
(sys) @post_imp
(sys) exit

 

Шаг 4. Подключение внешних библиотек

Для данного шага у вас должны быть подготовлены файлы shell.so и libtariff.so, которые необходимо поместить в каталог /usr/local/PLATEX/lib, после чего выполнить в sqlplus:


CREATE OR REPLACE LIBRARY PLATEX.C_SHELL_LIB AS '/usr/local/PLATEX/lib/shell.so';
/

CREATE OR REPLACE LIBRARY PLATEX.C_LIBTARIFF AS '/usr/local/PLATEX/lib/libtariff.so';
/

DECLARE
   rz INTEGER;
BEGIN
   rz := shell('ls / > /tmp/test_ora_shell.txt');
   Dbms_Output.Put_Line(rz);
END;
/

 

При корректном подключении shell.so в директории /tmp  появится файл test_ora_shell.txt.

На этом импорт схемы данных PLATEX можно считать завершенным.