Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Найти автора запроса в базе... / 9 сообщений из 9, страница 1 из 1
30.09.2014, 11:03
    #38761632
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Найти автора запроса в базе...
Доброго времени суток!
Есть такой вопрос, у нас есть запрос который выполняется 6 миллионов раз за день на базе. Мне кажется он туфтовый и уж точно 6 лямов раз выполняться не должен, примерно выгляди так:
Код: sql
1.
SELECT A0."NUMDOC" FROM "DOC"."DOC_OPERATIONN" A0 WHERE (?    = A0."ID") ORDER BY A0."ID" ASC FOR READ ONLY WITH UR



Как бы вычислить генератора такого запроса (место в коде приложения)? Ручной поиск по коду результатов не дал, да и такое чувство, что этот запрос websphere автоматом преобразовала от другого запроса.

В MSSQL по-моему можно было как то триггер на select прикрутить (в нем и ip-ик пробить и имя приложения), а вот в DB2 я такого не знаю!
Знатоки просьба, что нить посоветовать!
Спасибо!
...
Рейтинг: 0 / 0
30.09.2014, 13:33
    #38761932
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Найти автора запроса в базе...
Ну что опять тишина. Марк, вся надежда опять только на Вас!
...
Рейтинг: 0 / 0
30.09.2014, 15:16
    #38762159
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Найти автора запроса в базе...
medoed,

Добрый день.

Можно повесить аутит обращений к таблице. Правда, в результат попадут все запросы, обращающиеся к этой таблице.

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
create audit policy exec
categories execute  status both
error type normal;

audit table "DOC"."DOC_OPERATIONN" using policy exec;

-- время от времени архивируем в файл события
SELECT FILE FROM TABLE(AUDIT_ARCHIVE('d:\db2fs\audit', -2));
-- и излекаем в CSV файл:
CALL AUDIT_DELIM_EXTRACT(NULL, 'd:\db2fs\audit\extract', 'd:\db2fs\audit', 
'FILE_NAME_FROM_THE_PREVIOUS_SELECT', 'category EXECUTE');
...
Рейтинг: 0 / 0
30.09.2014, 15:42
    #38762223
m&m
m&m
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Найти автора запроса в базе...
...
Рейтинг: 0 / 0
30.09.2014, 16:34
    #38762312
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Найти автора запроса в базе...
Mark Barinsteinmedoed,

Добрый день.

Можно повесить аутит обращений к таблице. Правда, в результат попадут все запросы, обращающиеся к этой таблице.

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
create audit policy exec
categories execute  status both
error type normal;

audit table "DOC"."DOC_OPERATIONN" using policy exec;

-- время от времени архивируем в файл события
SELECT FILE FROM TABLE(AUDIT_ARCHIVE('d:\db2fs\audit', -2));
-- и излекаем в CSV файл:
CALL AUDIT_DELIM_EXTRACT(NULL, 'd:\db2fs\audit\extract', 'd:\db2fs\audit', 
'FILE_NAME_FROM_THE_PREVIOUS_SELECT', 'category EXECUTE');



Да Марк, это бы подошло, но нельзя ли в таблицу все запросы складировать, чтобы в файл ничего не откладывать?
Это было бы удобней, имхо!!!
...
Рейтинг: 0 / 0
30.09.2014, 18:28
    #38762499
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Найти автора запроса в базе...
medoedДа Марк, это бы подошло, но нельзя ли в таблицу все запросы складировать, чтобы в файл ничего не откладывать?
Это было бы удобней, имхо!!!Складировать в таблицу информацию из csv файла умеют утилиты db2 import/load.
...
Рейтинг: 0 / 0
30.09.2014, 18:37
    #38762508
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Найти автора запроса в базе...
Mark BarinsteinmedoedДа Марк, это бы подошло, но нельзя ли в таблицу все запросы складировать, чтобы в файл ничего не откладывать?
Это было бы удобней, имхо!!!Складировать в таблицу информацию из csv файла умеют утилиты db2 import/load.

Марк, ну на боевой сервер файлы складывать - админ будет ругаться. Я помню вы мне про statement показывали скрипт там можно было в таблицу сразу аудит насюкивать, здесь такое не прокатит?
...
Рейтинг: 0 / 0
30.09.2014, 18:50
    #38762523
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Найти автора запроса в базе...
medoedну на боевой сервер файлы складывать - админ будет ругаться. Я помню вы мне про statement показывали скрипт там можно было в таблицу сразу аудит насюкивать, здесь такое не прокатит?за день получать в таблицу несколько миллионов записей аудита автоматом, используя insert'ы (со всеми накладными расходами) - еще большее зло. Я на месте ДБА начал бы ругаться еще больше сисадмина.
Event monitor for statements не может нападать на запросы только на отдельную таблицу.
...
Рейтинг: 0 / 0
30.09.2014, 18:54
    #38762527
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Найти автора запроса в базе...
Mark Barinsteinmedoedну на боевой сервер файлы складывать - админ будет ругаться. Я помню вы мне про statement показывали скрипт там можно было в таблицу сразу аудит насюкивать, здесь такое не прокатит?за день получать в таблицу несколько миллионов записей аудита автоматом, используя insert'ы (со всеми накладными расходами) - еще большее зло. Я на месте ДБА начал бы ругаться еще больше сисадмина.
Event monitor for statements не может нападать на запросы только на отдельную таблицу.

Ну дык нам одень и нужен, я бы сказал, даже на пару часов! А потом отключим, Марк для записывания логов все же в таблицу - не поможете скриптом с примером? Зараннее спасибо!
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Найти автора запроса в базе... / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]