主頁(yè) > 知識(shí)庫(kù) > oracle區(qū)管理和段空間管理詳細(xì)介紹

oracle區(qū)管理和段空間管理詳細(xì)介紹

熱門標(biāo)簽:百度地圖標(biāo)注員是干什么 外呼系統(tǒng)鄭州 沈陽(yáng)400電話是如何辦理 地圖標(biāo)注付款了怎么找不到了 外呼系統(tǒng)口號(hào) 貴陽(yáng)智能電銷機(jī)器人官網(wǎng) 北京外呼系統(tǒng)公司排名 溫州人工外呼系統(tǒng) 北京營(yíng)銷外呼系統(tǒng)廠家

作為一名DBA,常見的一個(gè)場(chǎng)景之一:

創(chuàng)建表空間:

復(fù)制代碼 代碼如下:

createtablespaceThink
datafile'/u01/app/oracle/oradata/orcl/think.dbf'size100M
autoextendonnext10Mmaxsize4096M
extentmanagementlocaluniformsize256K
segmentspacemanagementauto;

創(chuàng)建用戶:
復(fù)制代碼 代碼如下:

createuserbin
defaulttablespaceThink
temporarytablespacetemp;

授予權(quán)限:
復(fù)制代碼 代碼如下:

grantconnect,resourcetobin;
revokeunlimitedtablespacefrombin;
alteruserbinquotaunlimitedonThink;

在這個(gè)場(chǎng)景中,有兩條語(yǔ)句:
①extentmanagementlocaluniformsize256K
②segmentspacemanagementauto
其中,前者是區(qū)管理;后者則是段空間管理

㈠區(qū)管理
區(qū)管理實(shí)際上就是表空間的管理
8i以前,是字典管理表空間,當(dāng)創(chuàng)建或刪除對(duì)象時(shí),Oracle的空間分配或回收是通過(guò)數(shù)據(jù)字典來(lái)記錄和管理
在高并發(fā)系統(tǒng)中,這會(huì)導(dǎo)致性能衰減、空間碎片等難題
這已經(jīng)是門過(guò)去的技術(shù),這里就不贅述了。
8i開始,Oracle引入本地表空間管理
在每個(gè)表空間的數(shù)據(jù)文件的頭部加入了一個(gè)位圖區(qū)域
一個(gè)段的第一個(gè)區(qū)的第一個(gè)塊是firstlevelbitmapblock
第二個(gè)塊是secondlevelbitmapblock
第三個(gè)塊才是段頭塊
這兩個(gè)塊是用來(lái)管理freeblock

語(yǔ)法:
復(fù)制代碼 代碼如下:

extentmanagementlocal{autoallocate|uniformsizenK/M}

是自動(dòng)分配還是統(tǒng)一尺寸
若為自動(dòng)分配,則Oracle會(huì)按照遞增算法來(lái)分配空間
如果選擇統(tǒng)一尺寸,還可以詳細(xì)指定每個(gè)區(qū)間的大小
dba_extents這個(gè)視圖可以看到哪些對(duì)象分配了多少區(qū)間

㈡段空間管理
Oracle以區(qū)間為單位將空間分配給對(duì)象段,而段內(nèi)則是以block為單位進(jìn)行空間使用和管理
我們以幾個(gè)參數(shù)來(lái)理解段空間管理
復(fù)制代碼 代碼如下:

[sql]
spanstyle="font-size:18px;">sys@ORCL>selectextent_management,segment_space_managementfromdba_tablespaces;
EXTENT_MANSEGMEN
----------------
LOCALMANUAL
LOCALMANUAL
LOCALAUTO
LOCALMANUAL
LOCALMANUAL

從9i開始,段空間管理有兩種:
①M(fèi)SSM:由你設(shè)置freelists、freelistgroups、pctused、pctfree、initrans等參數(shù)來(lái)控制如何分配、使用段中的空間
②ASSM:你只需控制一個(gè)參數(shù)pctfree,其他參數(shù)即使建了也將被忽略
⑴freelist
使用MSSM表空間管理時(shí),Oracle會(huì)在freelist中為有自由空間的對(duì)象維護(hù)HWM以下的塊
freelist和freelistgroup在ASSM表空間中根本不存在,僅在MSSM表空間使用這個(gè)技術(shù)
⑵pctfree和pctused
pctfree告訴Oracle:塊上應(yīng)該保留多大的空間來(lái)完成將來(lái)的更新
對(duì)于MSSM,她控制著塊何時(shí)放入freelist中,以及何時(shí)從freelist中取出。
如果大于pctfree,則這個(gè)塊會(huì)一直在freelist上
對(duì)于ASSM,因?yàn)锳SSM根本不使用freelist。在ASSM中,pctused也將被忽略。
但她仍然會(huì)限制能否將一個(gè)新行插入到一個(gè)塊中
適當(dāng)?shù)脑O(shè)置pctfree有助于減小行遷移
⑶initrans
無(wú)論是ASSMorMSSM這個(gè)參數(shù)仍然有效
塊頭的事務(wù)槽的初始化大小有對(duì)象的initrans指定

標(biāo)簽:定西 溫州 包頭 衢州 潮州 通遼 淮北 衡水

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《oracle區(qū)管理和段空間管理詳細(xì)介紹》,本文關(guān)鍵詞  oracle,區(qū),管理,和,段空間,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《oracle區(qū)管理和段空間管理詳細(xì)介紹》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于oracle區(qū)管理和段空間管理詳細(xì)介紹的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章