【11g体系结构,5】rowid

一.rowid

扩展的rowid 使用以64为基数的编码方案来显示。

rowid简单理解为数据的身份证号,总共18位,6位对象号,3为文件号,6位块号,3位行号。

rowid前15位表示块地址,前15位相同的数据在同一个块中。

#查询EMProwid

SQL> select rowid from scott.emp;

ROWID

------------------

AAACgBAAEAAAAAdAAA

AAACgBAAEAAAAAdAAB

AAACgBAAEAAAAAdAAC

AAACgBAAEAAAAAdAAD

AAACgBAAEAAAAAdAAE

AAACgBAAEAAAAAdAAF

AAACgBAAEAAAAAdAAG

AAACgBAAEAAAAAdAAH

AAACgBAAEAAAAAdAAI

AAACgBAAEAAAAAdAAJ

AAACgBAAEAAAAAdAAK

ROWID

------------------

AAACgBAAEAAAAAdAAL

AAACgBAAEAAAAAdAAM

AAACgBAAEAAAAAdAAN

14 rows selected.

#查询对象id

SQL> select object_id,object_name,object_type from dba_objects where owner=‘SCOTT‘;

OBJECT_ID OBJECT_NAM OBJECT_TYP

---------- ---------- ----------

10239 DEPT       TABLE

10240 PK_DEPT    INDEX

10241 EMP        TABLE

10242 PK_EMP     INDEX

10243 BONUS      TABLE

10244 SALGRADE   TABLE

6 rows selected.

#获取对象号

SQL> select dbms_rowid.rowid_object(‘AAACgBAAEAAAAAdAAG‘) from dual;

DBMS_ROWID.ROWID_OBJECT(‘AAACGBAAEAAAAADAAG‘)

---------------------------------------------

10241

#文件号

SQL> select dbms_rowid.rowid_relative_fno(‘AAACgBAAEAAAAAdAAG‘) from dual;

DBMS_ROWID.ROWID_RELATIVE_FNO(‘AAACGBAAEAAAAADAAG‘)

---------------------------------------------------

4

#块号

SQL> select dbms_rowid.rowid_block_number(‘AAACgBAAEAAAAAdAAG‘) from dual;

DBMS_ROWID.ROWID_BLOCK_NUMBER(‘AAACGBAAEAAAAADAAG‘)

---------------------------------------------------

29

#行号,第7条记录

SQL> select dbms_rowid.rowid_row_number(‘AAACgBAAEAAAAAdAAG‘) from dual;

DBMS_ROWID.ROWID_ROW_NUMBER(‘AAACGBAAEAAAAADAAG‘)

-------------------------------------------------

6

#查询区的信息, emp表现在拥有8个块,block_id 是25~32.

SQL> col segment_name for a10

SQL> select extent_id,segment_name,bytes/1024 k,blocks,file_id,block_id from dba_extents where owner=‘SCOTT‘;

EXTENT_ID SEGMENT_NA          K     BLOCKS    FILE_ID   BLOCK_ID

---------- ---------- ---------- ---------- ---------- ----------

0 DEPT               64          8          4          9

0 EMP                64          8          4         25

0 BONUS              64          8          4         41

0 SALGRADE           64          8          4         49

0 PK_DEPT            64          8          4         17

0 PK_EMP             64          8          4         33

6 rows selected.

二.一个数据块能存放多少条数据和1g空间能存放多少条数据:

三.OFA:最优灵活体系架构

ofa:是指oracle软件和数据库文件集文件夹的命名约定和存储位置规则。

$ORACLE_BASE 为:/u01/app/oracle

$oracle_home为:/u01/app/oracle/11.2.0/db_home_1

$ORACLE_BASE/

/oradata 数据文件

/product  软件地址

/admin 放置dump 文件

$oracle_home

/dbs 初始化文件(参数文件,密码文件)

/network/admin 配置监听

四:instance_name,sid ,db_name,global_name的关系

1.sid是操作系统用来表示实例的编号,可以理解为instance的操作系统编号,所以sid和instance_name一一对应。

select instance_name from v$instance 中存储的就是sid

2.但是instance_name 和db_name是有区别的:

rac环境下db_name为racdb,但实例名可能是racdb1和dacdb2

3.global_name 就是db_name.db_domain,global_name是为了在由多个数据库组成的分布式数据库中标识数据库名称而设立的。

SQL> select * from global_name;

GLOBAL_NAME

--------------

LOSCSMAN

SQL> select instance_name from v$instance;

INSTANCE_NAME

--------------------------------

loscsmanager

SQL> show parameter db_name;

NAME                                 TYPE                   VALUE

------------------------------------ ---------------------- ------------------------------

db_name                              string                 loscsman

时间: 2024-11-08 22:09:26

【11g体系结构,5】rowid的相关文章

oracle 11g体系结构

Oracle体系结构详解 一.oracle数据库的整体架构 由上图可知,oracle数据库由实例和数据库组成. 二.数据库存储结构: 2.1数据库存储结构 Oracle数据库有物理结构和逻辑结构.数据库的物理结构是数据库中的操作系统文件的集合.数据库的物理结构由数据文件.控制文件和重做日志文件组成. 数据文件:数据文件是数据的存储仓库. 联机重做日志文件:联机重做日志文件包含对数据库所做的更改记录,在发生故障时能够恢复数据.重做日志按时间顺序存储应用于数据库的一连串的变更向量.其中仅包含重建(重

【11g体系结构,6】参数文件和一些参数

一.参数文件的作用: 参数文件记录了数据库的配置.在数据库启动时,Oracle 要根据参数文件中的参数设置, 配置数据库.如要为各个内存池分配多少内存,允许打开的进程数和会话等等.要想让数 据库启动,必需先读取参数文件.参数文件中的参数,我们通常称其为初始化参数,简称就 是参数. 二.参数文件共有两种参数文件 参数文件包含pfile 和spfile.区别如下: 1.PFILE    为文本文件,可以使用vi编辑器进行修改,可以放在客户端和服务端. 文件名为:init<sid>.ora. 从or

Oracle 11g 体系结构 --SGA PGA 前后台进程

Oracle服务器主要由实例.数据库.程序全局区.前台进程 实例:用来提供管理数据库的功能 数据库:由Oracle数据库文件组成,用来存储系统数据 ;一般有:数据文件.控制文件.重做日志文件 而实例可以进一步划分为:系统全局区(SGA)和 后台进程(PMON,SMON等) 而SGA 是操作系统的内存资源,后台进程使用CPU和内存资源  程序全局区(PGA)是一个非共享的内存区域,用于管理用户进程的私有资源 系统全局区(SGA) System Global Area 是所有用户进程共享的一块内存区

Oracle Database 11g 体系结构

一.Oracle数据库结构 1.逻辑结构 1.1.数据块(Orale块):操作系统的存储系统中磁盘空间的一定数目字节组成.数据块是oracle数据库最小的逻辑部件.可定义为2K.4K.8K.16K.32K或者更大,通常称为Oralce块. Orale块的尺寸:在初始文件init.ora中的DB_BLOCK_SIZE参数设置.是处理oracle更新.选择.和插入数据库事务的最小单位(可认为等同于sql server的页).操作系统也有一个磁盘块的尺寸,所以理想情况下数据块的大小应该是磁盘块大小的倍

Oracle 11g 体系结构--数据字典

Oracle数据字典的名称由前缀和后缀组成,使用_连接,含义说明如下: dba_:包含数据库实例的所有对象信息 v$_:当前实例的动态视图,包含系统管理和系统优化等所使用的视图   user_:记录用户的对象信息 gv_:分布式环境下所有实例的动态视图,包括系统管理和系统优化使用的视图 all_:记录用户的对象信息机被授权访问的对象信息 基本数据字典 描述逻辑存储结构和物理存储结构的数据表,还包括描述其他数据对象信息的表: 数据字典名称 说明 dba_tablespaces 关于表空间的信息 d

DBA_Oracle基本体系架构(概念)

DBA_Oracle基本体系架构(概念) 2014-07-26 BaoXinjian 一. Oracle体系结构基本概念 1. Oracle总体结构分为三个部分 第一部分:系统全局区(SGA) 第二部分:程序全局区和后台进程 第三部分:Oracle的文件 2. 从功能角度接那些划分 存储结构 包括: 控制文件.数据文件和日志文件 作用: 由这些文件就构成了Oracle的物理存储结构. 内存结构 包括: 系统全局区(SGA) 和 程序全局区(PGA) 作用: 使用内存最多的是SGA,也是影响数据库

oracle 11g系列 体系结构

1.1. oracle体系结构 图中描述了oracle的结构,oracle结构是比较复杂的,oracle设计这么复杂的体系结构的原因在于:首先oracle是一个关系型数据库管理系统,主要就是为了实现数据存储和管理的,为了让数据库的速度变得更快,尽可能的让90%以上的工作都在内存完成.所以数据库中最稀缺的资源就是内存,其次是磁盘I/O,所以我们要做好内存和I/O的管理,为了解决这个问题oracle这么复杂的一个结构.从图中可以看出来oracle体系结构包含了进程结构.内存结构.存储结构.进程结构包

Oracle 11g R2 体系结构

 Oracle 11g R2体系结构 安装oracle软件----创建数据库----在数据库中创建表----表里存储信息---这些表文件需要存储在物理硬盘上面. 假如有一个用户(这个用户可以是远程用户,也可以是本地的,也可以是一个应用程序)连接到oracle数据库上面,用户是不能直接连接在硬盘上存储的数据文件,所以在oracle中要运行一个实例,实例并不是保存在硬盘上面的,实例是内存的一部分,而库和表文件是存放在硬盘上面的,用户不能直接访问库里面的数据,只能访问实例,实例是一个特殊的内存块,只有

oracle 11g 的体系结构

一: oracle 11g 的体系结构由数据库服务器构成,而数据库服务器包括:1.oracle数据库结构      2.oracle实例. 1.oracle数据库结构包括: 逻辑结构和物理结构. 2.oracle实例包括:  后台进程{ 数据写入进程(DBWR). 日志写入进程(LGWR).  系统监控进程(SMON). 进程监控进程(PMON). 检查点进程(CKPT)}  和 内存结构{ PGA(程序全局区).SGA(系统全局区)}.   PGA包括:用户进程 和 服务器进程 .  SGA包