У меня есть процесс, который загружает данные с помощью sqldr. Но иногда из-за других факторов в системе он не останавливается в разумные сроки. Есть ли способ безопасно убить sqlldr. Используя убить -9.
Остановка sqldr
Ответы (1)
Несколько проблем, с которыми вы можете столкнуться, если просто убьете процесс sqlldr:
- Если количество строк фиксации невелико, у вас могут быть уже зафиксированные данные, которые теперь необходимо удалить. Это может не иметь значения, если вы усекаете таблицы перед использованием, но очистка является оперативной проблемой, которая зависит от вашей системы.
- Если количество строк фиксации и размер вашего файла велики, вы можете столкнуться с проблемами из-за того, что сегменты отката слишком малы или сам откат занимает много времени (не должно быть проблемой, если вы используете прямой путь).
Вы можете убить, используя kill -9
, как уже упоминалось, или вы можете убить сеанс из базы данных:
alter system kill session 'sid,serial#';
Если вы используете Windows, вы можете использовать утилиту orakill.
person
John Doyle
schedule
04.01.2012