oracle進階筆記-管理員1-數據庫邏輯結構

-------------------------------邏輯結構------------------------------------

參考文檔:12章

tablespace 表空間 最大存儲單位 建立對象指定存儲在那個表空間

Segment 段: 可以存儲數據 表段(建立表xs 一定建議個段xs段)

Extent 區 :空間分配單位 (至少對象一個區)

Oracle data block 數據庫塊 最小i/0單位

連續的數據塊就組成區 存儲同一類型的數據區域成爲一個段 一個段只在一個表空間裏 一個表空間只能在一個數據庫裏

例如:我建立一個表xs (id number ,name char(10) ) 指定表空間爲users 插入1條數據

create table scott.xs (id number ,name char(10)) tablespace users ;

insert into scott.xs values(1,'tom');

clip_image002

commit;

clip_image003

會在users表空間分配空間給xs段 插入的數據

分配了多大的空間給xs段,如果我繼續插入數據,段會滿 ,繼續以Extent單位分配空間

select SEGMENT_NAME,SEGMENT_TYPE, TABLESPACE_NAME,EXTENT_ID, BLOCKS

from dba_extents

where OWNER ='SCOTT' and SEGMENT_NAME='XS' ;

clip_image005

段名xs

是一個表段

使用空間是users

EXTENT_ID 第一個區是0 (編號從0開始)

blocks 佔用8個塊

一個塊大小多少?

SQL> show parameter db_block_size

clip_image007

總結:我建立一個段xs 使用的uses表空間,分配1個區 佔有8個塊 總大小64K

繼續插入,如果數據量大於64K 數據庫怎麼辦?

insert into scott.xs select * from scott.xs ;

clip_image008

clip_image009

SQL> select SEGMENT_NAME,SEGMENT_TYPE, TABLESPACE_NAME,EXTENT_ID, BLOCKS

from dba_extents

where OWNER ='SCOTT' and SEGMENT_NAME='XS' ;

clip_image011

區是連續的數據塊

BLOCK_ID 起始編號

select SEGMENT_NAME,SEGMENT_TYPE, TABLESPACE_NAME,EXTENT_ID, BLOCK_ID,BLOCKS

from dba_extents

where OWNER ='SCOTT' and SEGMENT_NAME='XS' ;

clip_image013

Tablespaces and Data Files 表空間和數據文件之間的關係

表空間分爲 大文件表空間:一個表空間只能有1個數據文件 支持到128T (?)

小文件表空間(默認) :一個表空間裏面可以有多個數據文件

建庫的時候默認強制建立system 和sysaux

system必須在線,存儲是核心功能(數據字典)

sysaux 存儲em的信息

system sysaux 不建議存儲用戶數據

總結:

1 oracle server =instance +database

2 instance =meomoy +process

3 物理結構

4 邏輯結構

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章