Oracle DB Slowness - большое количество запросов, отображаемых в БД для таблиц gv $ sql и user $ - PullRequest
0 голосов
/ 05 февраля 2019

Я сталкиваюсь с медлительностью в моем приложении из-за медленных запросов к серверу в Oracle.

В инструменте мониторинга AppDynamics я вижу высокое число выполнений следующего запроса.

SELECT executions, end_of_fetch_count, elapsed_time/px_servers elapsed_time, cpu_time/px_servers cpu_time, buffer_gets/executions buffer_gets
FROM (
SELECT sum(executions) as executions, sum(case when px_servers_executions > ? then px_servers_executions else executions end) as px_servers, sum(end_of_fetch_count) as end_of_fetch_count, sum(elapsed_time) as elapsed_time, sum(cpu_time) as cpu_time, sum(buffer_gets) as buffer_gets
FROM gv$sql WHERE executions > ?
AND sql_id = :?
AND parsing_schema_name = :?)

502467950Выполнение за 1 день для указанного выше запроса

и

update user$ set spare6=DECODE(to_char(:?, ?), ?, to_date(NULL), :?) where user#=:?

2425367481 Выполнение за 1 день для этого запроса

Я подозреваю, что это занимает большую часть процессорного времени (или другие ресурсы) вместо запросов, фактически выполняемых приложением.

Также при просмотре AppDynamics показывает, что эти запросы запускаются с моих серверов приложений с использованием пользователя SYS.Но мои приложения не имеют доступа к пользователю SYS.

Может ли кто-нибудь помочь мне выяснить, что может инициировать выполнение этих запросов / Для чего эти запросы на самом деле предназначены?

Спасибозаранее.

...