Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 21 Next »

Для работы с дампами БД следует пользоваться специальным скриптом dump.sh, который, как правило, располагается в /opt/hydra/oracle/scripts/dump.sh. Скрипт обязательно следует вызвать под пользователем oracle с инициализированным окружением. Инициализацию окружения для пользователя oracle с помощью sudo можно выполнить с помощью следующей команды:

su - oracle
cd /opt/hydra/oracle/scripts/

У данного скрипта для работы с БД существуют следующие варианты запуска:

  • export — снятие дампа. Дамп снимается в директорию для дампов, установленную в БД (как правило, это /var/oradata/dumps).
  • drop — очистка. Перед очисткой следует обязательно убедиться, что БД не является промышленной.
  • import — загрузка дампа в БД. Перед загрузкой дампа обязательно следует выполнить очистку. Дамп поднимается из директории для дампов, установленной в БД (как правило, это /var/oradata/dumps). После импортирования флаг "Признак промышленной базы данных" сбрасывается.

Параметры вызова скрипта, которые предотвращают интерактивный ввод:

  • -i — название БД (инстанса)
  • -o — название схемы
  • -p — пароль пользователя AIS_NET
  • -f — название дампа (файла с дампом)
  • -s — отказ от предупреждающего сообщения при очистке БД

Пример вызова скрипта для переноса дампа БД с hydra на hydra2:

  1. Снятие дампа с hydra:

    ./dump.sh -i hydra -p ais_net -f hydra_dump export
    
  2. Очистка hydra2:

    ./dump.sh -i hydra2 -p ais_net drop
    
  3. Поднятие дампа на hydra2:

    ./dump.sh -i hydra2 -p ais_net -f hydra_dump import

    Во время импорта дампа в новую базу возможны ошибки следующего вида:

    Failing sql is:
    GRANT SELECT ON "AIS_NET"."SR_V_GOOD_SERVS" TO "NET_GOODS"
    ORA-39083: Object type OBJECT_GRANT failed to create with error:
    ORA-01917: user or role 'NET_GOODS' does not exist

    Эти ошибки не являются критичными, т.к. скрипт экспорта выгружает только схему AIS_NET. Отсутствующие роли создаются в БД отдельным скриптом по окончании процедуры импорта.

     

Примечание

Так как процедура снятия резервных копий с помощью утилиты expdp (скрипт dump.sh) является достаточно ресурсоемкой, снимать резервные копии БД рекомендуется в ночное время в часы наименьшей нагрузки на сервер (как правило, с 2-х до 4-х часов ночи). 

 

Отмена незавешенного процесса дампа осуществляется с помощью CTRL-c и команды kill_job:

...
. . exported "AIS_NET"."SS_JOB_LOGS"                     635.2 MB 1550063 rows
. . exported "AIS_NET"."SD_PROCESSING_REQUESTS_T"        563.8 MB    7204 rows
. . exported "AIS_NET"."SD_MV_DOCUMENTS"                 479.7 MB 3247473 rows
^C
Export> kill_job
Are you sure you wish to stop this job ([yes]/no): yes
  • No labels