|
|
|
Мониторинг долгоиграющих запросов в Oracle SE
|
|||
|---|---|---|---|
|
#18+
Вдруг кому-то пригодится. Если есть запрос с объемными чтениями (например, FULL SCAN или HASH JOIN, которые длятся более 6 сек или сканируют более 10000 блоков), можно использовать скриптик, который выводит план текущего запроса в заданной сессии и время выполнения по v$session_longops. Можно мониторить. Наверное, скрипт можно улучшить, но вот основа: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. Нужно задать SID интересующей сессии, где работает долгоиграющий запрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2016, 13:54 |
|
||
|
Мониторинг долгоиграющих запросов в Oracle SE
|
|||
|---|---|---|---|
|
#18+
По модулю, action, терминалу и т.п. искать сессии все-таки удобнее, особенно если заранее не озаботился SID-ом. ...и это... connect by, конечно, круто, но разве plan_line_id на SE отменили, как v$sql_plan_monitor и %HIST%? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2016, 14:03 |
|
||
|
Мониторинг долгоиграющих запросов в Oracle SE
|
|||
|---|---|---|---|
|
#18+
У нас сейчас SE2 даже, а не SE, т.е. самая простенькая версия. v$sql_plan_monitor - у нас там пусто %HIST% - тоже пустые (AWR и ASH в SE не входят) plan_line_id - это в v$sql_plan_monitor Ну а так - если есть идеи, можно доработать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2016, 14:26 |
|
||
|
Мониторинг долгоиграющих запросов в Oracle SE
|
|||
|---|---|---|---|
|
#18+
Деев И.plan_line_id - это в v$sql_plan_monitor Ну да. Зато в v$sql_plan есть ID. Посмотрел сейчас в боевой - нашел план на 927 (sic!) шагов. Вполне адекватно сортируется по id, для красивого форматирования есть поля depth и position. v$sql_plan дока на v$sql_planID NUMBER A number assigned to each step in the execution plan PARENT_ID NUMBER ID of the next execution step that operates on the output of the current step DEPTH NUMBER Depth (or level) of the operation in the tree. It is not necessary to issue a CONNECT BY statement to get the level information, which is generally used to indent the rows from the PLAN_TABLE table. The root operation (statement) is level 0. POSITION NUMBER Order of processing for all operations that have the same PARENT_ID ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2016, 16:36 |
|
||
|
Мониторинг долгоиграющих запросов в Oracle SE
|
|||
|---|---|---|---|
|
#18+
Действительно, запрос стал проще. Спасибо за конструктивные замечания! Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2016, 17:34 |
|
||
|
Мониторинг долгоиграющих запросов в Oracle SE
|
|||
|---|---|---|---|
|
#18+
Деев И., DBMS_SQLTUNE.report_sql_monitor тоже что ли нет ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2016, 19:16 |
|
||
|
Мониторинг долгоиграющих запросов в Oracle SE
|
|||
|---|---|---|---|
|
#18+
kinky catДеев И., DBMS_SQLTUNE.report_sql_monitor тоже что ли нет ?В SE нет. С другой стороны не совсем понятно какие цели преследует автор при мониторинге. Часто для анализа перфоманса пользуют произведение Подера Snapper . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2016, 19:22 |
|
||
|
Мониторинг долгоиграющих запросов в Oracle SE
|
|||
|---|---|---|---|
|
#18+
Цели тут самые простые. Например, если у вас появился какой-то новый отчет, который перелопачивает довольно много данных, можно понаблюдать онлайн, как отрабатывает запрос. Как-то комфортнее, когда видишь, что происходит и сколько это может продлиться, хотя бы примерно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2016, 11:24 |
|
||
|
Мониторинг долгоиграющих запросов в Oracle SE
|
|||
|---|---|---|---|
|
#18+
Упустил, что еще и по sql_id нужно добавить условие, т.к. sql_exec_id не является уникальным Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2016, 10:02 |
|
||
|
Мониторинг долгоиграющих запросов в Oracle SE
|
|||
|---|---|---|---|
|
#18+
Деев И. Код: plsql 1. 2. Требует 12c. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2016, 11:19 |
|
||
|
Мониторинг долгоиграющих запросов в Oracle SE
|
|||
|---|---|---|---|
|
#18+
Деев И.Цели тут самые простые. Например, если у вас появился какой-то новый отчет, который перелопачивает довольно много данных, можно понаблюдать онлайн, как отрабатывает запрос. Как-то комфортнее, когда видишь, что происходит и сколько это может продлиться, хотя бы примерно.Я для комфортного наблюдения за тем, что происходит set_client_info вызываю. Это и юзерфрендли мониторинг и зверей убивать не надо (с) ((:. LongOps, конечно, тоже юзаю. Но делаю это сразу по нескольким сессиям, т.к. много чего в параллели считается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2016, 11:31 |
|
||
|
Мониторинг долгоиграющих запросов в Oracle SE
|
|||
|---|---|---|---|
|
#18+
Деев И., Илья, послал контакты Алексея. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2016, 18:41 |
|
||
|
Мониторинг долгоиграющих запросов в Oracle SE
|
|||
|---|---|---|---|
|
#18+
ElicДеев И. Код: plsql 1. 2. Требует 12c.Поскольку ТС работает на SE2, версия его СУБД не ниже 12.1.0.2. Но на 11g более ранних версиях будет тут ошибка. Это да. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2016, 13:24 |
|
||
|
Мониторинг долгоиграющих запросов в Oracle SE
|
|||
|---|---|---|---|
|
#18+
Деев И.У нас сейчас SE2 даже, а не SE, т.е. самая простенькая версия.SE2 - это не "самая простенькая версия", а самая современная стандартная редакция. Начиная с 12.1.0.2 она пришла на смену SE1 и SE. То есть последняя версия SE1 и SE - это 12.1.0.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2016, 13:26 |
|
||
|
Мониторинг долгоиграющих запросов в Oracle SE
|
|||
|---|---|---|---|
|
#18+
Да, неверно выразился. Имел в виду, что это самая ограниченная по используемым процессорным ресурсам версия (2 процессора по 10 ядер, если не ошибаюсь). Хотя по функционалу - даже шире, так как RAC в SE2 доступен по лицензии даже на двух процессорах (В SE1 был вообще недоступен). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2016, 16:25 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39351369&tid=1886918]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
30ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
73ms |
get tp. blocked users: |
2ms |
| others: | 239ms |
| total: | 383ms |

| 0 / 0 |
