Sapforum.Biz

Инструменты => Администрирование (BC) => Тема розпочата: dump від Грудень 20, 2007, 10:41:30 ПП

Назва: как эффективно найти какая программа поменяла данные ?
Відправлено: dump від Грудень 20, 2007, 10:41:30 ПП
если какая-то корявая пользовательская программа удалила по ошибке данные в стандартной таблице
то как найти какая ? У нас получалось по анализу SQL-CASHE - но может есть другие методы?
документы изменений не рассматриваются т.к. не везде есть и подобные программы в них не пишут свои изменения.
Назва: Re: как эффективно найти какая программа поменяла данные ?
Відправлено: №1 від Грудень 21, 2007, 10:43:36 ДП
В принципе это самый оптимальный из известных мне способов.
Другое дело, когда в кэше нет уже данных (типа базу перестартовали или прошло слишком много времени после удаления). В этом случае только через поиск where-is-used по таблице и просмотр прог из своего пространства имен на предмет операций по удалению с дальнейшим копанием в журналах security на предмет: а кто это запускал в подозреваемое время.

По ходу дела: если обнаружили удаление быстро и с момента удаления еще не прошло времени больше чем указано в UNDO_RETENTION, то можно вытащить данные назад в таблицу средствами Оракла.
Назва: Re: как эффективно найти какая программа поменяла данные ?
Відправлено: Uukrul від Грудень 21, 2007, 11:44:23 ДП
Цитата: №1 від Грудень 21, 2007, 10:43:36 ДП
удаления). В этом случае только через поиск where-is-used по таблице и просмотр прог из своего пространства имен
Это если программа явно делает обновление таблиц. А вот если через имя таблицы в переменной, типа:
name_table = 'MARA'.
INSERT (name_table) INTO others_mara.

то пожалуй вряд ли чего хорошего найдешь таким образом.
Назва: Re: как эффективно найти какая программа поменяла данные ?
Відправлено: dump від Грудень 21, 2007, 10:44:52 ПП
всем спасибо за идеи - в общем лучше такого не допускать а то потом концов можно и не найти
Назва: Re: как эффективно найти какая программа поменяла данные ?
Відправлено: №1 від Грудень 22, 2007, 07:58:51 ДП
Цитата: dump від Грудень 21, 2007, 10:44:52 ПП
всем спасибо за идеи - в общем лучше такого не допускать а то потом концов можно и не найти
А есть идеи на предмет "не допускать"? :)
Назва: Re: как эффективно найти какая программа поменяла данные ?
Відправлено: dump від Грудень 22, 2007, 01:42:55 ПП
кроме "пропаганды" и "карательных мер" в случае нарушения ;D наверное ничего нет 
Назва: Re: как эффективно найти какая программа поменяла данные ?
Відправлено: №1 від Грудень 22, 2007, 02:52:44 ПП
Цитата: dump від Грудень 22, 2007, 01:42:55 ПП
кроме "пропаганды" и "карательных мер" в случае нарушения ;D наверное ничего нет 
Паяльник ::) слесарные тиски в комплекте с ножовкой ;D
Назва: Re: как эффективно найти какая программа поменяла данные ?
Відправлено: Uukrul від Грудень 22, 2007, 05:34:28 ПП
Цитата: №1 від Грудень 22, 2007, 02:52:44 ПП
Паяльник ::) слесарные тиски в комплекте с ножовкой ;D
Ну можно конечно процедурно сделать такую штуку как контроль исходящего кода от разработчиков на предмет наличия любых обновлений данных и комментариев по поводу зачем делаются такие обновления с анализом логики... но в реальной жизни к сожалению такое вряд ли возможно, так как тут проблема с квалификацией тех кто проверяет...
Назва: Re: как эффективно найти какая программа поменяла данные ?
Відправлено: №1 від Грудень 22, 2007, 05:47:31 ПП
Цитата: Uukrul від Грудень 22, 2007, 05:34:28 ПП
Ну можно конечно процедурно сделать такую штуку как контроль исходящего кода от разработчиков на предмет наличия любых обновлений данных и комментариев по поводу зачем делаются такие обновления с анализом логики... но в реальной жизни к сожалению такое вряд ли возможно, так как тут проблема с квалификацией тех кто проверяет...
Угу... "я оглянулся посмотреть не посмотрела ль она как оглянулся ли я..."  ;D