Oracle 使用 "select 1 from sys.obj$ where 1=0" 做什么?
What does Oracle use "select 1 from sys.obj$ where 1=0" for?
我在我们的 Oracle 数据库中,在消息中看到了这一点。
select 1 from sys.obj$ where 1=0;
我很好奇它的作用。是不是只是发起一个session,看看有没有生命迹象?
该查询由 Oracle SQL 开发人员自动生成,没有恶意。
我不能确切地说出查询的用途。但是当我在我们的数百个数据库中查找它时,我发现大约 20 行是完全不相关的用户和数据库。他们唯一的共同点是 MODULE
被设置为 "SQL Developer".
select executions, parsing_schema_name, module, first_load_time
from gv$sql
where sql_text = 'select 1 from sys.obj$ where 1=0';
对 GV$SQL
和 DBA_AUDIT_TRAIL
的进一步查询显示其他无聊的数据字典查询同时 运行。这让我相信它是某些 Oracle SQL 开发人员功能的一组后台查询 运行 之一。
select executions, parsing_schema_name, first_load_time, gv$sql.*
from gv$sql
where parsing_schema_name = '<user from above>'
order by gv$sql.first_load_time desc;
我在我们的 Oracle 数据库中,在消息中看到了这一点。
select 1 from sys.obj$ where 1=0;
我很好奇它的作用。是不是只是发起一个session,看看有没有生命迹象?
该查询由 Oracle SQL 开发人员自动生成,没有恶意。
我不能确切地说出查询的用途。但是当我在我们的数百个数据库中查找它时,我发现大约 20 行是完全不相关的用户和数据库。他们唯一的共同点是 MODULE
被设置为 "SQL Developer".
select executions, parsing_schema_name, module, first_load_time
from gv$sql
where sql_text = 'select 1 from sys.obj$ where 1=0';
对 GV$SQL
和 DBA_AUDIT_TRAIL
的进一步查询显示其他无聊的数据字典查询同时 运行。这让我相信它是某些 Oracle SQL 开发人员功能的一组后台查询 运行 之一。
select executions, parsing_schema_name, first_load_time, gv$sql.*
from gv$sql
where parsing_schema_name = '<user from above>'
order by gv$sql.first_load_time desc;