– 强制走索引
explain plan for select /+index(t IND_PS_NCOMEPAYOUT_ALS_YJFKSJ)/ select * from user
– 查询执行计划
EXPLAIN PLAN FOR SELECT * FROM user;
SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);
–1.执行
alter session set statistics_level=all;
–2.执行SQL语句:
SELECT *from user
–3.查询出SQL语句的sql_id:
select sql_id,sql_text from v$sqlarea where sql_text like ‘% user%’;
declare
V_NUM_CPU_CORES number(8);
begin
–重新收集统计信息,获取当前数据库服务器CPU物理核心数(暂不考虑Intel CPU HT超线程技术估算的逻辑运算单元数NUM_CPUS)
SELECT VALUE INTO V_NUM_CPU_CORES FROM V$OSSTAT WHERE STAT_NAME=‘NUM_CPU_CORES’;
DBMS_STATS.GATHER_TABLE_STATS(OWNNAME =>SYS_CONTEXT(‘USERENV’,‘CURRENT_USER’),TABNAME => ‘user’,CASCADE => TRUE,
METHOD_OPT => ‘FOR ALL COLUMNS SIZE AUTO’,NO_INVALIDATE=>FALSE,DEGREE=>V_NUM_CPU_CORES);
end;
–查询Oracle正在执行的sql语句及执行该语句的用户
SELECT b.OSUSER 电脑登录身份,
b.sid oracleID,
b.username 登录Oracle用户名,
c.sql_text 正在执行的SQL,
c.SQL_ID,
b.STATUS,
b.machine 计算机名,
b.Cpu_Time 花费cpu的时间,
b.PROGRAM 发起请求的程序,
SCHEMANAME,
b.serial#,
spid 操作系统ID,
paddr,
b.SQL_TEXT 执行的sql
FROM v p r o c e s s a , ( S E L E C T A . ∗ , B . C p u T i m e , B . S Q L T E X T F R O M V process a, (SELECT A.*, B.Cpu_Time, B.SQL_TEXT FROM V processa,(SELECTA.∗,B.Cp<