随笔分类 - Oracle 体系结构
摘要:前面介绍的 shared pool,library cache结构,都是为了说明一条SQL是如何被解析的。先看下面的图:图中涉及的各结构简单介绍父HANDLE,里面有父游标堆0的地址。。父游标堆0:有指向一个或多个子游标的HANDLE的句柄地址父游标在第一次打开时被锁定,直到其他所有的sessi...
阅读全文
摘要:上一篇blog只是从概念上理解Library cache,本篇则是将Library cache从内存中dump出来,看看其结构。基本命令ALTER SESSION SET EVENTS 'immediate trace name LIBRARY_CACHE level LL';其中LL代表Lev...
阅读全文
摘要:Shared pool物理层面上由许多内存块(chunck)组成。从逻辑功能划分,Shared pool主要由三部分组成:Library cache,Dictionary cache和Control Structure。本文主要讲述 Library cache.Library cache li...
阅读全文
摘要:相关概念CHUNK: Shared pool物理层面上由许多内存块组成,这些内在块称为chunk。但是chunk是大小不一的,在内存中一个chunk是连续的。EXTENT:由多个连续的chunk组成HEAP: 堆由一个或多个大小不一的extent组成将shool pool内存dump出来将shool...
阅读全文
摘要:--创建表SQL> create table tab (a number, b number); Table created.--插入数据SQL> begin 2 for i in 1..10000 loop 3 ...
阅读全文
摘要:一.何为直方图 直方图是一种几何形图表,它是根据从生产过程中收集来的质量数据分布情况,画成以组距为底边、以频数为高度的一系列连接起来的直方型矩形图,如图所示 二.ORACLE 直方图 在Oracle中直方图是一种对数据分布情况进行描述的工具。它会按照某一列不同值出现数量多少,以及出现的频率高低来绘制
阅读全文
摘要:问题描述:ORA-12505, TNS:listener does not currently know of SID given in connect descriptor The Connection descriptor used by the client was: 10.12.162.84...
阅读全文
摘要:一.查看当前环境1.1 当前控制文件中的SCN号[oracle@ora10 ~]$ sqlplus /nologSQL*Plus: Release 10.2.0.1.0 - Production on Sat Jan 17 10:11:34 2015Copyright (c) 1982, 2005,...
阅读全文
摘要:一.数据文件的第一个数据块结构kcvfhBBED> set file 1 FILE# 1BBED> set block 1 BLOCK# 1--查看第一个数据块的整体结构BBED> map /v File: /u01/app/orac...
阅读全文
摘要:bbed 可以在db open 状态来进行修改,但是建议在做任何修改操作之前先shutdown db。 这样避免checkpoint 进程重写bbed 对block 的修改。 也避免oracle 在bbed 修改完成之前读block 或者申明block 为corrupt。一. 示例: 修改Dat...
阅读全文
摘要:一.BBED常用命令说明先看帮助的说明BBED> help all SET DBA [ dba | file#, block# ]SET FILENAME 'filename'SET FILE file#SET BLOCK [+/-]block#SET OFFSET [ [+/-]b...
阅读全文
摘要:一.centos上编译安装BBED工具[orasrv@localhost ~]$ cd $ORACLE_HOME/rdbms/lib[orasrv@localhost ~]$ make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed也可通过以下命令将bbed生...
阅读全文
摘要:数据块(Block) 数据块Block是Oracle存储数据信息的最小单位。注意,这里说的是Oracle环境下的最小单位。Oracle也就是通过数据块来屏蔽不同操作系统存储结构的差异。无论是Windows环境,还是Unix/Linux环境,他们的操作系统存储结构和方式、甚至字符排列的方式都是不同的...
阅读全文
摘要:一.Rowid rowid是伪列(pseudocolumn),伪劣的意思是实际上这一列本身在数据字典中并不存在,在查询结果输出时它被构造出来的。 rowid并不会真正存在于表的data block中,但是他会存在于index当中,用来通过rowid来寻找表中的行数据二.Rowid的结构 限制r...
阅读全文
摘要:一.利用数据泵将数据导出 1.1.确定字符集: select * from v$nls_parameters; 或 select userenv('language') from dual; 1.2.设置客户端字符集(Windows) set NLS_LANG = NLS_LANGUAGE_NLS_
阅读全文
摘要:目标 了解oracle内存管理方式 掌握ASMM管理方式 掌握AMM管理方式 监控内存使用 学习一个知识点时,最好先了解其历史。ORACLE近期的版本都对内存管理做了简化,从9i通过PGA_AGGREGATE_TARGET参数实现PGA的自动管理,10g通过Automatic Shared Memo
阅读全文
摘要:目标 1.SGA结构 2.PGA结构1.SGAShared pool 1)、共享池是对SQL、PL/SQL程序进行语法分析、编译、执行的内存区域。 在执行SELECT * FROM emp语句时,会对sql语句进行语法分析->编译->生成执行计划->运行执行计划等,这些操作都在共...
阅读全文
摘要:Offset0123456789ABCDEF00018000h6A2000c08038b611500034typefrmtspare1/2rdbabaswrpseqflgThe Cache Header The Cache Header :注:@符号后数字表示块内偏移字节数Struct kcbh 20 bytes @0 :此结构体共20字节,块内偏移为0字节,即块首。 ub1 type_kcbh @0 :1=undo segment header block; 2=undo data block; 5= data segment header block; 6=data block ub1 f
阅读全文
摘要:按锁的机制分类 排他锁( X ):如果事务T对对象A加上排他锁,则只允许T对A对象读取和修改,其他事务不能对A增加任何锁,直到T释放加载A上的排他锁 共享锁( S ):如果事务T对表A加上共享锁,则事务T可以读该表,但是不能修改该表数据。其他事务也只能对该对象加上共享锁,但是不能加上排他锁。这就保证了其他事务可以读A表数据,但是不能修改A表数据(这就不会影响到读该表的事务了,有利于并发操作)。按操作行为分类 DML Locks 保证并发情况下的数据完整性 DDL Locks 用于保护数据库对象的结构 System Locks 保护数据库的内部结构DML Locks: Row Loc...
阅读全文
摘要:一。ORACLE字符编码方案 1.单字节字符集: 在单字节字符集中,每个字符只占一个字节。单字节7 位编码方案最多可以定义128 (2^7) 个字符;单字节8 位编码方案最多可以定义256 (2^8) 个字符。 单字节方案示例: 2.宽度固定的多字节字符集 除了每个字符采用字节数固定的格式外,宽度固
阅读全文
浙公网安备 33010602011771号