重庆思庄Oracle、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: 王硕
打印 上一主题 下一主题

新手的日常积累

[复制链接]
11#
 楼主| 发表于 2014-11-27 22:28:23 | 只看该作者
undo 保存修改前的数据 。另外一个用户访问时 undo构造一个cr原始的块
回复 支持 反对

使用道具 举报

12#
 楼主| 发表于 2014-11-27 22:46:48 | 只看该作者
Buffer Cache专题

1.Buffer Cache的重要参数配置

select component,current_size,min_size FROM v$sga_dynamic_components;

2.使用advice来确认buffer cache的大小

SELECT size_for_estimate "Cache Size (MB)",size_factor,buffers_for_estimate "Buffers",
estd_physical_read_factor est_read_factor,
estd_physical_reads estd_phy_red,estd_physical_read_time est_phy_red_t
FROM  v$db_cache_advice
WHERE NAME='DEFAULT' AND block_size=(SELECT VALUE FROM v$parameter WHERE NAME='db_block_size');

3.一个对象占用buffer的具体情况
select
o.object_name,
decode(state,0,'free',1,'xcur',2,'scur',3,'cr', 4,'read',5,'mrec',
6,'irec',7,'write',8,'pi') state,
count(*) blocks
from x$bh b, dba_objects o
where b.obj = o.data_object_id
--and o.object_name = 'T2'
group by o.object_name, state
order by blocks desc;
4.对象使用pool的具体情况(考虑了各种池子的情况)

select
o.object_name,
decode(state,0,'free',1,'xcur',2,'scur',3,'cr', 4,'read',5,'mrec',
6,'irec',7,'write',8,'pi') state,
count(*) blocks
from x$bh b, dba_objects o
where b.obj = o.data_object_id and state <> 0
group by o.object_name, state
order by blocks asc;
5.寻找热块

SELECT
   obj      object,
   dbarfil  file#,
   dbablk   block#,
   tch      touches
FROM
   x$bh
WHERE
   tch > 10
ORDER BY
   tch asc;
6.整个数据库所有文件中block的总和
select
   sum(blocks)
from
   dba_data_files;

7.空闲空间的比例,最好控制在10%以内
select decode(state,0, 'FREE',1,decode(lrba_seq,0,'AVAILABLE','BEING USED'),3, 'BEING USED', state) "BLOCK STATUS",count(*) 
from  x$bh 
group by decode(state,0,'FREE',1,decode(lrba_seq,0,'AVAILABLE','BEING USED'),3, 'BEING USED', state); 

8.最浪费内存的前10个语句占所有语句的比例,建议控制在5%以内

select sum(pct_bufgets) "Percent" 
from (select rank() over ( order by buffer_gets desc ) as 
rank_bufgets,to_char(100 * ratio_to_report(buffer_gets) over (),'999.99') pct_bufgets from v$sqlarea ) 
where rank_bufgets < 11;

9.找出消耗物理IO资源最大的的SQL语句

select disk_reads, substr(sql_text,1,4000) from v$sqlarea  order by disk_reads asc; 


select BUFFER_GETS, substr(sql_text,1,4000) from v$sqlarea  order by BUFFER_GETS asc; 


10.9、清空buffer cache

alter system flush buffer_cache;
回复 支持 反对

使用道具 举报

13#
 楼主| 发表于 2014-11-29 13:01:55 | 只看该作者
一致性读需要读回滚段的数据,
[em54]

先开一个session对测试表执行update操作,不要commit。
另外开一个session对测试表执行select操作
,你会发现逻辑读变大! 
回复 支持 反对

使用道具 举报

14#
 楼主| 发表于 2014-11-29 13:06:40 | 只看该作者
双机两个节点的进程数量不一样

一节点很多,二节点很少
且活动的会话一直在一节点,二节点只有一两个活动会话(还是用PL/SQL连接上去的)

 问题:客户端连接是使用的tnsnames.ora,是否连的scan ip?还是直接连的固定节点?
 原因:连接字符串原来配置的是两个VIP地址,把字符串改成SCAN
回复 支持 反对

使用道具 举报

15#
 楼主| 发表于 2014-11-29 13:07:19 | 只看该作者
 密码延迟验证
[em57]
从11g开始,如果一个用户使用不正确的密码尝试登录数据库,
那么随着登录失败次数的增加,每次登录验证前延迟等待的时间也会增加。
显然这是一个安全性上的考虑,但有时候也会带来验证的性能问题。
如果同时大量的连接采用错误的密码,基本上这个用户的登录就会被完全HANG住。 
回复 支持 反对

使用道具 举报

16#
 楼主| 发表于 2014-11-29 13:10:08 | 只看该作者
打开回话的详细情况


sql>set timing on
sql>set autotrace on
 
回复 支持 反对

使用道具 举报

17#
 楼主| 发表于 2014-11-29 13:10:53 | 只看该作者
 系统块大小 
[em56]
dumpe2fs  dev/sda1 
回复 支持 反对

使用道具 举报

18#
 楼主| 发表于 2014-11-29 22:55:26 | 只看该作者
回复 支持 反对

使用道具 举报

19#
 楼主| 发表于 2014-12-5 21:01:11 | 只看该作者
 查找会话
select sid from v$mystat where rownum=1 

 主机名
Select object_name from dba_objects where Object=51905

 数据库名
 Show parameter servers

 主机ip  可能有4,6,8个网卡
 netstat  -tulnp|grep 1521
 
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2024-5-18 20:34 , Processed in 0.095507 second(s), 18 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表