SQL_TRACE

set linesize 10000;
set pagesize 20000;
set serveroutput on;
alter session set sql_trace=true;
select count(*) from firefox;
alter session set sql_trace=false; --查看sql_trace trace file
select * from v$diag_info where name like 'Default%';
select sid,serial# from v$session ; variable x number;
exec :x:=1;
alter session set events '10046 trace name context forever,level 12';
select count(*) from firefox where object_id=:x;
alter session set events '10046 trace name context off';
select object_name from dba_objects where object_id=426 or object_id=427 SQL> select * from aux_stats$;
收集系统信息
exec dbms_stats.gather_system_stats(gathering_mode=>'start');
alter system flush_cache;
select count(*) from fire_t01;
select * from aux_stats$; 初始化参数;
db_file_multiblock_read_count
查看数据表一共有多少个块;
select blocks from user_tables where table_name='FIREFOX'; set autotrace on;
SELECT * FROM FIREFOX; SELECT /*+ blocks/k=cost */ 1029/10.4 from dual; 查看数据块大小
show parameter db_block_size; select * from sys.aux_stats$;
SYSSTATS_MAIN IOSEEKTIM 10
SYSSTATS_MAIN IOTFRSPEED 4096
SYSSTATS_MAIN CPUSPEEDNW 2657.0122 #单块读的时间
sreadtim = IOSEEKTIM+(size of one block/IOTFRSPEED).
=10+(8192/4096)=12
#多块数据块读取的时间
mreadtim=IOSEEKTIM+(MBRC * SIZE OF one block) / IOTFRSPEED)
=10+((16*8192)/4096)=42
io_cost=(1046(blocks)/16)*(42/12)=232.75
cpu_cost=cpu_cost=cpucycles/(cpuspeed*sreadtim)
=116192792/(2657.0122*12*1000)=4.48
cost=io_cost+cpu_cost = 232.75 + 4.48 =
如何查看cpucycles:PLAN_TABLE、PLAN_TABLE$; create table firefox1 as select * from firefox where rownum<100;
create index idx_firefox on firefox(object_id);
create index idx_firefox1 on firefox1(object_id); begin
dbms_stats.gather_table_stats(
user,
'firefox',
cascade => true,
estimate_percent => null,
method_opt =>'for all columns size 1'
);
end;
/ begin
dbms_stats.gather_table_stats(
user,
'firefox1',
cascade => true,
estimate_percent => null, --完全精确地分析;
method_opt =>'for all columns size 1'
);
end;
/ alter session set events '10053 trace name context forever,level 12';
select * from firefox,firefox1 where firefox.object_id = firefox1.object_id;
alter session set events '10053 trace name context off';
select * from v$diag_info where name like 'Default%'; 对SGA区的动态调整;
SQL> show sga; 网络连接 --session &processes;
SQL> select username,paddr from v$session where username is not null; USERNAME PADDR
------------------------------ ----------------
SYS 00000000F04DAE60
SYS 00000000F04DAE60
C##SCOTT 00000000F04DBEA0 select addr from v$process where background is null and addr='00000000F04DAE60';
select * from v$process where background is null and addr='00000000F04DAE60'; set autotrace on stat;
select username,paddr from v$session where username is not null;
select addr from v$process where background is null and addr='00000000F04DAE60'; CBO计算成本时索引的权重修正值.
show parameter OPTIMIZER_INDEX_COST_ADJ;
alter session set OPTIMIZER_INDEX_COST_ADJ=10;
优化器--optimizer_mode
first_rows [1|10|100|1000]
first
优化器--optimizer_dynamic_sampling
动态采样的级别0to10
默认值(9i 1, >= 10g 2) 查看当前sql/plus 的SID
SELECT sid, serial# FROM v$session WHERE audsid=SYS_CONTEXT('USERENV','SESSIONID');
select a.name,b.value from v$sesstat b.v$statname a where a.static#=b.statistic# and a.name ='CPU used by this session' and sid=69; 显示各种文件的I/O统计信息
- 数据文件,临时文件,控制文件,日志文件,归档文件...
select file_no,filetype_name,LARGE_READ_MEGABYTES,SMALL_READ_MEGABYTES,SMALL_SYNC_READ_LATENCY from v$iostat_file;
对象--v$segstat
获得某对象的各类统计信息;
select * from v$segstat where obj#=79605 and statistic_name='physical_reads';

Oracle DBA学习篇之SQL_TRACE的更多相关文章

  1. Oracle DBA 学习总结

    对于学习Oracle 数据库,应该先要了解Oracle 的框架.它有物理结构(由控制文件.数据文件.重做日志文件.参数文件.归档文件.密码文件组成) ,逻辑结构(表空间.段.区.块),内存分配( SG ...

  2. oracle开发学习篇之集合函数

    集合函数; declare type list_nested ) not null; v_all list_nested := list_nested('changan','hubei','shang ...

  3. oracle开发学习篇之集合运算符以及集合异常捕获

    --取出集合;长度 declare type list_nested ) not null; v_all list_nested := list_nested('a','b','c','d','c', ...

  4. Oracle DBA的学习(笔记)

    1.软件任务分组:系统分析师.系统设计师.程序员.测试人员.开发dba.系统架构师.实施人员. 2.常用设计图:活动图.用例图.类图.序列图. 2010-9-15(dba学习) 1.1 Oracle产 ...

  5. Oracle RMAN 学习:演练进阶篇

    Oracle RMAN 学习:演练进阶篇 5 Rman备份演练进阶篇 5.1 是否选择增量备份 Backup命令生成的备份集中只备份了那些使用了的数据块,备份集实际大小已经较目标数据库的数据文件小了很 ...

  6. Oracle DBA面试突击题

    一份ORACLE DBA面试题 一:SQL tuning 类 1:列举几种表连接方式 答: Oracle的多表连接算法有Nest Loop.Sort Merge和Hash Join三大类,每一类又可以 ...

  7. oracle Dba之路

    如何快速的成为一个合格的 DBA? 2010年11月03日 11:25:00 阅读数:584 原文来自:http://topic.csdn.net/u/20101031/21/A78B2EA1-6F2 ...

  8. Oracle基础学习笔记

    Oracle基础学习笔记 最近找到一份实习工作,有点头疼的是,有阶段性考核,这...,实际想想看,大学期间只学过数据库原理,并没有针对某一数据库管理系统而系统的学习,这正好是一个机会,于是乎用了三天时 ...

  9. Asp.Net MVC4 + Oracle + EasyUI 学习 序章

    Asp.Net MVC4 + Oracle + EasyUI  序章 -- 新建微软实例 本文链接:http://www.cnblogs.com/likeli/p/4233387.html 1.  简 ...

随机推荐

  1. python socket编程和黏包问题

    一.基于TCP的socket tcp是基于链接的,必须先启动服务端,然后再启动客户端去链接服务端,有顺序,不重复,可靠.不会被加上数据边界. server端 import socket sk = so ...

  2. Java 并发--线程创建

    随着处理器的多核化,为提高处理器的资源利用率应用程序的并发变应运而生了.现在的操作系统是多任务操作系统,多线程是实现多任务的一种方式. 进程是指一个内存中运行的应用程序,每个进程都有自己独立的内存空间 ...

  3. python网络编程--事件驱动模型

    论事件驱动与异步IO 事件驱动模型:根据事件的触发去干什么事,就是根据一个事件做反应 原文:http://www.cnblogs.com/alex3714/articles/5248247.html常 ...

  4. Python 深拷贝、浅拷贝

    Python中,对象的赋值,拷贝(深/浅拷贝)之间是有差异的,如果使用的时候不注意,就可能产生意外的结果. 首先,对赋值操作我们要有以下认识: 赋值是将一个对象的地址赋值给一个变量,让变量指向该地址( ...

  5. java基础46 IO流技术(输出字符流/缓冲输出字符流)

    一.输出字符流 1.1.输出字符流体系 --------| Writer:输出字符流的基类(抽象类)  ----------| FileWriter:向文件输出数据输出字符流(把程序中的数据写到硬盘中 ...

  6. 配置vuejs加载模拟数据

    [个人笔记,非技术博客] 1.使用前确保安装axios插件,vuejs官方推荐,当然使用其他插件也可以 2.配置dev-server.js var router = express.Router(); ...

  7. JS Ajax异步请求发送列表数据后面多了[]

    还在苦逼的写代码,这里就不详细了,直接抛出问题: 如图所示: 前端ajax请求向后端发送数据的时候,给key添加了[]出现很多找不到原因, 后面在说 解决方法: 暂时先这样记录一下,下次方便查找,好了 ...

  8. 20165203 实验二 Java面向对象程序设计

    20165203 实验二 Java面向对象程序设计 一.面向对象程序设计1--单元测试和TDD 1.实验要求 参考 (http://www.cnblogs.com/rocedu/p/6371315.h ...

  9. Writing a Kernel in C++

    *:first-child { margin-top: 0 !important; } .markdown-body>*:last-child { margin-bottom: 0 !impor ...

  10. 一步一步学习IdentityServer3 (5)

    这篇文章介绍下数据持久化问题,官方例子可能都是缓存数据 Client  User Scope 下面介绍下怎么使用数据库持久化 这里需要导入nuget包 :IdentityServer3.EntityF ...