Таблица блокировок Oracle Data Pump Export (expdp) (или что-то подобное)
Я должен экспортировать данные из многораздельной таблицы с глобальным индексом, который должен быть подключен постоянно, но у меня возникают проблемы с этим. Для экспорта данных я использую Data Pump Export - expdp и экспортирую только один раздел. Самый старый, а не активный.
Моя команда expdp экспортирует правильные данные, и это выглядит так:
expdp user/pass@SID DIRECTORY=EXP_DIR
DUMPFILE=part23.dmp TABLES=SCHEMA_NAME.TABLE_NAME:TABLE_PARTITION_23`
Приложение, использующее базу данных, имеет время ожидания соединения 10 секунд. Этот параметр нельзя изменить. Если запросы INSERT не завершаются в течение 10 секунд, данные записываются в файл резервной копии.
Моя проблема в том, что во время процесса экспорта, который длится несколько минут, некоторые данные попадают в файл резервной копии, а не в базу данных. Я хочу знать почему и избегать этого.
Разделы организуются еженедельно, и я сохраняю 4 раздела активными (последние 4 недели). Каждый раздел занимает до 3 ГБ.
Я использую Oracle 11.2
1 ответ
У вас есть лицензия на использование AWR? Если да, есть ли у вас отчет AWR для моментального снимка, когда произошли тайм-ауты?
Считыватели Oracle не блокируют записи, и у процесса экспорта не было бы никаких оснований блокировать все, что могло бы повлиять на новые вставки.
Является ли эта операция INSERT одиночной, время ожидания которой составляет 10 секунд (т.е. вы вставляете большое количество строк в одну инструкцию INSERT)? Или это пакет отдельных вставок, так что некоторые из вставок могут преуспеть в 10-секундном окне, а некоторые могут дать сбой? Вы говорите, что "некоторые данные попадают в файл резервной копии", но я не уверен, какой из этих сценариев является более точным.
Насколько вы близки к обычному режиму работы в течение 10 секунд?
Возможно ли, что система связана с вводом / выводом, а выполнение экспорта увеличивает нагрузку на систему ввода / вывода, вызывая замедление всех операций? Если у вас есть узкое место ввода-вывода и вы добавили процесс экспорта, который должен прочитать раздел размером 3 ГБ и записать эти данные на диск (предположительно также на сервере базы данных), это, безусловно, может привести к общему замедлению. Если вы уже достаточно близки к 10-секундному тайм-ауту, это, безусловно, может перевернуть вас.