版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
oracle系統(tǒng)表查詢
2005-4-29網(wǎng)絡(luò)
數(shù)據(jù)字典diet總是屬于Oracle用戶sys的。
************************************************************************
**************************************************
1、用戶:
selectusernamefromdba_users;
創(chuàng)建用戶
CREATEUSERjzmisPROIDENTIFIEDBYjzmis
DEFAULT
TABLESPACEUSERSTEMPORARY
TABLESPACETEMPACCOUNTUNLOCK;
GRANTDBATOjzmisWITHADMINOPTION;
commit;
改口令
alteruserspgroupidentifiedbyspgtest;
2、表空間:
select*fromdbadatafiles;
select*fromdba_tablespaces;//表空間
selecttablcspacc_namc,sum(bytcs),sum(blocks)
fromdba_free_spacegroupbytablespace_name;//空閑表
空間
select*fromdba_data_files
wheretablespace_name='RBS';//表空間對應(yīng)的數(shù)據(jù)文件
select*fromdba_segments
wheretablespace_name='INDEXS';
刪除表空間
dropTABLESPACEXNMISINCLUDINGCONTENTS;
創(chuàng)建表空間
CREATETABLESPACE"XNMIS"
LOGGING
DATAFILE4E:\oracle\productWoradata\jzmis\xnmis.dbf,
SIZE2048MEXTENT
MANAGEMENTLOCALSEGMENTSPACE
MANAGEMENTAUTO
AUTOEXTENDONNEXT5MMAXSIZEUNLIMITED
CREATETABLESPACE"XNMIS"
LOGGING
DATAFILE'E:\oraclc\product\\oradata\jzmis\XNMIS.dbf
SIZE2048MREUSE
AUTOEXTENDONNEXT5MMAXSIZEUNLIMITED
'E:\oracle\admin\cmid\JTAIS.ora'(path)
“CTAIS”(表空間名)
3、數(shù)據(jù)庫對象:
select*fromdba_objects;
CLUSTER、DATABASELINK、FUNCTION、INDEX、LIBRARY、
PACKAGE、PACKAGEBODY>
PROCEDURE、SEQUENCE、SYNONYM>TABLE、TRIGGER、
TYPE、UNDEFINED、VIEW。
4、表:
select*fromdba_tables;
analyzemy_tablecomputestatistics;->dba_tables后6歹ij
selectextent_id,bytesfromdba_extents
wheresegment_name="CUSTOMERS'and
segment_type='TABLE'
orderbyextentjd;//表運(yùn)用的extent的信息。
快照、分區(qū)應(yīng)存在相應(yīng)的表空間。
10、同義詞:
select*fromdba_synonyms
wheretable_owner='SPGROUP,;
//ifownerisPUBLIC,thenthesynonymsisapublic
synonym.
ifownerisoneofusers,thenthesynonymsisaprivate
synonym.
11、數(shù)據(jù)庫鏈:
select*fromdba_db_links;
在spbase下建數(shù)據(jù)庫鏈
createdatabaselinkdbl_spnew
connecttospnewidentifiedbyspnewusing'jhhx';
insertintoacc_nbr@dbl_spnew
select*fromacc_nbrwherenxx_nbr='237'and
linenbr='8888,;
12、觸發(fā)器:
select*fromdba_trigers;
存儲(chǔ)過程,函數(shù)從dba_objects查找。
其文本:selecttextfromuser_sourcewhere
name='BOOKSPEXAMPLE,;
建立出錯(cuò):select*fromuser_errors;
oracle總是將存儲(chǔ)過程,函數(shù)等軟件放在SYSTEM表空間。
13、約束:
(1)約束是和表關(guān)聯(lián)的,可在createtable或altertabletable_name
add/drop/modify來建立、修改、刪除約束。
可以臨時(shí)禁止約束,如:
altertablebook_example
disableconstraintbook_example_l;
altertablebook_example
enableconstraintbook_example_1;
(2)主鍵和外鍵被稱為表約束,而notnull和unique之類的約束
被稱為列約束。通常將主鍵和外鍵作為單獨(dú)的命名約束放在字段列表下
面,而列約束可放在列定義的同一行,這樣更具有可讀性。
(3)列約束可從表定義看出,即describe;表約束即主鍵和外鍵,可
從dba_constraints和dba_cons_columns查
select*fromuser_constraints
wheretablename='BOOKEXAMPLE";
selectowner,CONSTRAINTNAME,TABLENAME
fromuser_constraints
whereconstraint_type='R'
orderbytable_name;
(4)定義約束可以無名(系統(tǒng)自動(dòng)生成約束名)和自己定義約束名
(特殊是主鍵、外鍵)
如:createtablebook_example
(identifiernumbernotnull);
createtablebook_example
(identifiernumberconstranitbook_example_1notnull);
14、回滾段:
在全部的修改結(jié)果存入磁盤前,回滾段中保持復(fù)原該事務(wù)所需的全部
信息,必需以數(shù)據(jù)庫發(fā)生的事務(wù)來相應(yīng)確定其大小(DML語句才可回滾,
create,drop,truncate等DDL不能回滾)。
回滾段數(shù)量=并發(fā)事務(wù)/4,但不能超過50;使每個(gè)回滾段大小足夠處
理一個(gè)完整的事務(wù);
createrollbacksegmentr05
tablespacerbs;
createrollbacksegmentrbs_cvt
tablespacerbs
storage(initialIMnext500k);
使回滾段在線
alterrollbacksegmentr04online;
用dba_extents,v$rollback_segs監(jiān)測回滾段的大小和動(dòng)態(tài)增長。
回滾段的區(qū)間信息
select*fromdba_extents
wheresegment_type='ROLLBACK'and
segment_name="RB1
回滾段的段信息,其中bytes顯示目前回滾段的字節(jié)數(shù)
select*fromdba_segments
wheresegment_type='ROLLBACK'and
segment_name="RB1';
為事物指定回來段
settransactionuserollbacksegmentrbs_cvt
針對bytes可以運(yùn)用回滾段回縮。
alterrollbacksegmentrbs_cvtshrink;
selectbytes,extents,max_extentsfromdba_segments
wheresegment_type='ROLLBACK'and
segment_name="RBS_CVT';
Hl滾段的當(dāng)前狀態(tài)信息:
select*fromdba_rollback_segs
wheresegment_name='RB1';
比多回滾段狀態(tài)status,回滾段所屬實(shí)例instance_num
查優(yōu)化值optimal
selectn.name,s.optsize
fromv$rollnamen,v$rollstats
wheren.usn=s.usn;
回滾段中的數(shù)據(jù)
settransactionuserollbacksegmentrbl;/*回滾段名*/
selectn.name,s.writes
fromv$rollnamen,v$rollstats
wheren.usn=s.usn;
當(dāng)事務(wù)處理完畢,再次查詢$rollstat,比較writes(回滾段條目字節(jié)
數(shù))差值,可確定事務(wù)的大小。
查詢回滾段中的事務(wù)
columnrrheading'RBSegment'formatal8
columnusheading'Username'formatal5
columnosheadingOsUser'formatalO
columnteheading'Terminal'formatalO
selectr.namerr,nvl(s.username,'notransaction*)
us,s.osuseros,s.terminalte
fromv$lockl,v$sessions,v$rollnamer
wherel.sid=s.sid(+)
andtruncfl.id1/65536)=R.USN
andl.type=,TX'
andl.lmode=6
orderbyr.name;
15、作業(yè)
查詢作業(yè)信息
selectjob,broken,next_date,interval,whatfromuserjobs;
selectjob,broken,next_date,interval,whatfromdbajobs;
查詢正在運(yùn)行的作業(yè)
select*fromdbajobs_running;
運(yùn)用包execdbms_job.submit(:v_num,'a;',sysdate,'sysdate+
(10/(24*60*6。)))力[J入作業(yè)。間隔10秒鐘
execdbms_job.submit(:v_num,'a;',sysdate「sysdate+(11/(24*60)),)
加入作業(yè)。間隔11分鐘運(yùn)用包execdbms_job.remove(21)刪除21號
作業(yè)。
安裝Oracle后,常常運(yùn)用的修改表空間的SQL代碼(1)
配置:
WindowsNT4.0中文版
5塊10.2GBSCSI硬盤
分:C:盤、D:盤、E:盤、F:盤、G:盤
OracleforWindowsNT
NT安裝在C:\WINNT,Oracle安裝在C:\ORANT
目標(biāo):
因系統(tǒng)的回滾段太小,現(xiàn)準(zhǔn)備生成新的回滾段,
建立大的、新的表空間(數(shù)據(jù)表空間、索引表空間、回滾表空間、臨時(shí)表
空間、)
建兩個(gè)數(shù)據(jù)表空間、兩個(gè)索引表空間,這樣建的目的是依據(jù)實(shí)際應(yīng)用,
如:現(xiàn)有1。個(gè)應(yīng)用用戶,每個(gè)用戶是一個(gè)獨(dú)立子系統(tǒng)(如:商業(yè)進(jìn)銷存
MIS系統(tǒng)中的財(cái)務(wù)、收款、庫存、人事、總經(jīng)理等)
尤其大型商場中收款機(jī)眾多,同時(shí)訪問進(jìn)程許多,常常達(dá)到50-10。個(gè)進(jìn)
程同時(shí)訪問,
這樣,通過建立多個(gè)用戶表空間、索引表空間,把各個(gè)用戶分別建在不同
的表空間里(多個(gè)用戶表空間放在不同的物理磁盤上),
削減了用戶之間的I/O競爭、讀寫數(shù)據(jù)與寫讀索引的競爭(用戶表空間、
索引表空間也分別放在不同的物理磁盤上)
規(guī)劃:
C:盤、NT系統(tǒng),Oracle系統(tǒng)
D:盤、數(shù)據(jù)表空間1(3GB、自動(dòng)擴(kuò)展)、回滾表空間1(1GB、自動(dòng)擴(kuò)
展)
E:盤、數(shù)據(jù)表空間2(3GB、自動(dòng)擴(kuò)展)、回滾表空間2(1GB>自動(dòng)擴(kuò)
展)
F:盤、索引表空間1(2GB、自動(dòng)擴(kuò)展)、臨時(shí)表空間1(0.5GB、不自
動(dòng)擴(kuò)展)
G:盤、索引表空間2(2GB、自動(dòng)擴(kuò)展)、臨時(shí)表空間2(0.5GB、不自
動(dòng)擴(kuò)展)
注:這只是一個(gè)簡潔的規(guī)劃,實(shí)際規(guī)劃要依系統(tǒng)需求來定,盡量削減I/O
競爭
實(shí)現(xiàn):
1、首先杳看系統(tǒng)有哪些回滾段與其狀態(tài)。
SQL>colownerformata20
SQL>colstatusformatalO
SQL>colsegment_nameformata20
SQL>coltablespace_nameformata20
SQL>SELECT
OWNER,SEGMENT_NAME,TABLESPACE_NAME,SUM(BYTES)/1
024/1024M
2FROMDBA_SEGMENTS
3WHERESEGMENT_TYPE='ROLLBACK'
4GROUPBYOWNER,SEGMENTNAME,TABLESPACENAME
5/
OWNERSEGMENT_NAMETABLESPACE_NAME
M
SYSRBIROLLBACK_DATA.097656
25
SYSRB10ROLLBACK_DATA.097656
25
<>
安裝Oracle后,常常運(yùn)用的修改表空間的SQL代碼(2)
SYSRB11ROLLBACK_DATA.097656
25
SYSRB12ROLLBACK.DATA.097656
25
SYSRB13ROLLBACK_DATA.097656
25
SYSRB14ROLLBACK_DATA.097656
25
SYSRB15ROLLBACK_DATA.097656
25
SYSRB16ROLLBACK_DATA.097656
25
SYSRB2ROLLBACK_DATA.097656
25
SYSRB3ROLLBACK_DATA.097656
25
安裝Oracle后,常常運(yùn)用的修改表空間的SQL代碼⑶
SYSRB4ROLLBACK_DATA.097656
25
SYSRB5ROLLBACKDATA.097656
25
SYSRB6ROLLBACK_DATA.097656
25
SYSRB7ROLLBACK.DATA.097656
25
SYSRB8ROLLBACK_DATA.097656
25
SYSRB9ROLLBACK_DATA.097656
25
SYSRB_TEMPSYSTEM.24414063
SYSSYSTEMSYSTEM.1953125
查詢到18記錄.
SQL>SELECTSEGMENT_NAME,OWNER,
<>
安裝Oracle后,常常運(yùn)用的修改表空間的SQL代碼
(4)2TABLESPACE_NAME,SEGMENT_ID,
3FROMDBA_ROLLBACK_SEGS
4/
SEGMENT.NAMEOWNERTABLESPACE_NAME
SEGMENTIDSTATUS
SYSTEMSYSSYSTEM0
1ONLINE
RB_TEMPSYSSYSTEM1
1OFFLINE
RBIPUBLICROLLBACK_DATA2
3ONLINE
RB2PUBLICROLLBACK.DATA3
3ONLINE
安裝Oracle后,常常運(yùn)用的修改表空間的SQL代碼⑸
RB3PUBLICROLLBACK_DATA4
3ONLINE
RB4PUBLICROLLBACK_DATA5
3ONLINE
RB5PUBLICROLLBACK_DATA6
3ONLINE
RB6PUBLICROLLBACK_DATA7
3OFFLINE
RB7PUBLICROLLBACK_DATA8
3OFFLINE
RB8PUBLICROLLBACKDATA9
3OFFLINE
<>
安裝Oracle后,常常運(yùn)用的修改表空間的SQL代碼(6)
RB9PUBLICROLLBACK_DATA1
03OFFLINE
RB10PUBLICROLLBACK_DATA1
13OFFLINE
RB11PUBLICROLLBACK_DATA1
23OFFLINE
RB12PUBLICROLLBACK.DATA1
33OFFLINE
RB13PUBLICROLLBACK_DATA1
43OFFLINE
RB14PUBLICROLLBACK_DATA1
53OFFLINE
<>
安裝Oracle后,常常運(yùn)用的修改表空間的SQL代碼⑺
RB15PUBLICROLLBACK_DATA1
63OFFLINE
RB16PUBLICROLLBACK_DATA1
73OFFLINE
查詢到18記錄.
2、修改代碼如下,可把以下代碼存入一.sql文件,如cg_sys.sql,然后
以SQL>@cg_sys.sql調(diào)用執(zhí)行。
■■留意:各個(gè)硬盤上要事先建好oradata書目
一修改現(xiàn)有回滾段,使之失效,下線
alterrollbacksegmentrbloffline;
alterrollbacksegmentrb2offline;
alterrollbacksegmentrb3offline;
alterrollbacksegmentrb4offline;
alterrollbacksegmentrb5offline;
alterrollbacksegmentrb6offline;
alterrollbacksegmentrb7offline;
alterrollbacksegmentrb8offline;
alterrollbacksegmentrb9offline;
alterrollbacksegmentrblOoffline;
alterrollbacksegmentrbl1offline;
alterrollbacksegmentrbl2offline;
alterrollbacksegmentrbl3offline;
alterrollbacksegmentrbl4offline;
alterrollbacksegmentrbl5offline;
alterrollbacksegmentrbl6offline;
--刪除原有回滾段
droprollbacksegmentrbl;
droprollbacksegmentrb2;
droprollbacksegmentrb3;
droprollbacksegmentrb4;
droprollbacksegmentrb5;
droprollbacksegmentrb6;
droprollbacksegmentrb7;
droprollbacksegmentrb8;
droprollbacksegmentrb9;
droprollbacksegmentrblO;
droprollbacksegmentrbl1;
droprollbacksegmentrbl2;
droprollbacksegmentrbl3;
droprollbacksegmentrbl4;
droprollbacksegmentrbl5;
droprollbacksegmentrbl6;
一建數(shù)據(jù)表空間1
<>
安裝Oracle后,常常運(yùn)用的修改表空間的SQL代碼(8)--收款、庫存、
訂貨、遠(yuǎn)程通信
createtablespaceUSER_DATA1datafile
'd:\oradata\userl_l.ora'size512M,
'd:\oradata\userl_2.ora'size512M,
'd:\oradata\userl_3.ora'size512M,
'd:\oradata\userl_4.ora'size512M,
'd:\oradata\user1_5.ora'size512M,
'd:\oradata\userl_6.ora'size512M
AUTOEXTENDONNEXT5MMAXSIZEUNLIMITED
defaultstorage(initial128Knext2Mpctincrease0);
-initial128K,因?yàn)?,用戶建在表空間上,而表建在用戶里,為用戶所
擁有,
一用戶繼承數(shù)據(jù)表空間的存儲(chǔ)參數(shù),表繼承用戶的存儲(chǔ)參數(shù)
一假如initial設(shè)的過大,如:5M,則每建一個(gè)空表就要占用5M的空間,
即使一條記錄也沒有
-AUTOEXTENDONNEXT5MMAXSIZEUNLIMITED,設(shè)置數(shù)據(jù)文
件自動(dòng)擴(kuò)展,每一次擴(kuò)展增加5M,最大空間不受限
―建數(shù)據(jù)表空間2
一物價(jià)、人事、結(jié)算、財(cái)務(wù)、總經(jīng)理、合同、統(tǒng)計(jì)
createtablespaceUSER_DATA2datafile
'e:\oradata\user2_l.ora'size512M,
'e:\oradata\user2_2.ora'size512M,
'e:\oradata\user2_3.ora'size512M,
'e:\oradata\user2_4.ora'size512M,
'e:\oradata\user2_5.ora'size512M,
'e:\oradata\user2_6.ora'size512M
AUTOEXTENDONNEXT5MMAXSIZEUNLIMITED
defaultstorage(initial128Knext2Mpctincrease0);
一建索引表空間1
createtablespaceINDEX_DATA1datafile
'f:\oradata\index1_1.ora'size512M,
'f:\oradata\index1_2.ora'size512M,
'f:\oradata\indexl_3.ora'size512M,
'f:\oradata\indexl_4.ora'size512M
AUTOEXTENDONNEXT5MMAXSIZEUNLIMITED
defaultstorage(initial128Knext2Mpctincrease0);
―建索引表空間2
createtablespace1NDEX_DATA2datafile
'g:\oradata\index2_l.ora'size512M,
'g:\oradata\index2_2.ora'size512M,
'g:\oradata\index2_3.ora'size512M,
'g:\oradata\index2_4.ora'size512M
AUTOEXTENDONNEXT5MMAXSIZEUNLIMITED
defaultstorage(initial128Knext2Mpctincrease0);
一建回滾表空間1
一設(shè)置初始值40M(initial40M),則每在這個(gè)表空間中建一個(gè)回滾段,
一此回滾段自動(dòng)繼承此間滾表空間的存儲(chǔ)參數(shù),也即默認(rèn)文件為40M
createtablespaceROLLBACK_DATA1datafile
'd:\oradata\roll1_1.ora'size512M,
'd:\oradata\roll1_2.ora'size512M
AUTOEXTENDONNEXT5MMAXSIZEUNLIMITED
defaultstorage(initial40Mnext5Mpctincrease0);
--建何滾表空間2
createtablespaceROLLBACK_DATA2datafile
<>
安裝Oracle后,常常運(yùn)用的修改表空間的SQL代碼(9)
'e:\oradata\roll2_l.ora'size512M,
'e:\oradata\roll2_2.ora'size512M
AUTOEXTENDONNEXT5MMAXSIZEUNLIMITED
defaultstorage(initial40Mnext5Mpctincrease0);
一建臨時(shí)表空間1
createtablespaceTEMPORARY_DATA1datafile
'f:\oradata\templ_l.ora'size512M
defaultstorage(initial10Mnext3Mpctincrease0);
一建臨時(shí)表空間2
createtablespaceTEMPORARY_DATA2datafile
'g:\oradata\temp2_l.ora'size512M
defaultstorage(initial10Mnext3Mpctincrease0);
■■使其真正成為臨時(shí)的
altertablespaceTEMPORARY_DATA1temporary;
altertablespaceTEMPORARY_DATA2temporary;
一建立新的回滾段,每個(gè)都一樣大,不同大小的回滾段沒有什么意義,系
統(tǒng)是隨機(jī)選擇的。
--建多少個(gè),依據(jù)并發(fā)訪問用戶的多少,
■?假如你們公司每天有50-100個(gè)人員運(yùn)用Oracle系統(tǒng)開發(fā)的管理軟件,
應(yīng)當(dāng)20個(gè)以上
createpublicrollbacksegmentrbOltablespacerollback_datal;
createpublicrollbacksegmentrb02tablespacerollback_datal;
createpublicrollbacksegmentrb03tablespacerollback_data1;
createpublicrollbacksegmentrb04tablespacerollback_data1;
createpublicrollbacksegmentrb05tablespacerollback_data1;
createpublicrollbacksegmentrb06tablespacerollback_data1;
createpublicrollbacksegmentrb07tablespacerollback_data1;
createpublicrollbacksegmentrb08tablespacerollback_datal;
createpublicrollbacksegmentrb09tablespacerollback_data2;
createpublicrollbacksegmentrblOtablespacerollback_data2;
--前8個(gè)建在回滾表空間1中,后8個(gè)在回滾表空間2
createpublicrollbacksegmentrbl1tablespacerollback_data2;
createpublicrollbacksegmentrbl2tablespacerollback_data2;
createpublicrollbacksegmentrbl3tablespacerollback_data2;
createpublicrollbacksegmentrbl4tablespacerollback_data2;
createpublicrollbacksegmentrbl5tablespacerollback_data2;
createpublicrollbacksegmentrbl6tablespacerollback_data2;
createpublicrollbacksegmentrbl7tablespacerollback_data2;
createpublicrollbacksegmentrbl8tablespacerollback_data2;
createpublicrollbacksegmentrbl9tablespacerollback_data2;
<>
安裝Oracle后,常常運(yùn)用的修改表空間的SQL代碼(10)createpublic
rollbacksegmentrb20tablespacerollback_data2;
一使回滾段online,即有效
alterrollbacksegmentrbO1online;
alterrollbacksegmentrb02online;
alterrollbacksegmentrb03online;
alterrollbacksegmentrb04online;
alterrollbacksegmentrb05online;
alterrollbacksegmentrb06online;
alterrollbacksegmentrb07online;
alterrollbacksegmentrb08online;
alterrollbacksegmentrb09online;
alterrollbacksegmentrblOonline;
alterrollbacksegmentrbl1online;
alterrollbacksegmentrbl2online;
alterrollbacksegmentrbl3online;
alterrollbacksegmentrbl4online;
alterrollbacksegmentrbl5online;
alterrollbacksegmentrbl6online;
alterrollbacksegmentrbl7online;
alterrollbacksegmentrbl8online;
alterrollbacksegmentrbl9online;
alterrollbacksegmentrb20online;
一查看現(xiàn)有回滾段與其狀態(tài)
colsegmentformata30
SELECT
SEGMENT_NAME,OWNER,TABLESPACE_NAME,SEGMENT_ID,
FROMDBAROLLBACKSEGS;
一查看數(shù)據(jù)文件與其所在表空間、大小、狀態(tài)
colformata40
coltablespace_nameformata20
selectfromdbadatafiles;
至此,表空間重新規(guī)劃完畢,這里講的比較通俗,還有好多參數(shù)值得設(shè)置,
能夠把Oracle設(shè)置到最優(yōu)的境界,
表空間設(shè)置完了,下面,就該好好的整理一下Oracle的內(nèi)存區(qū)了,
Oracle很有意思,內(nèi)存越大,效果越明顯,所以有必要好好調(diào)整一下SGA
區(qū),也就是主要配置ininorcl.ora參數(shù)文件。
.ORACLE體系結(jié)構(gòu)組成
Oracleserver=Oracleinstance+Oracledatabase
Oracleinstance=Memory(SGA+PGA)+BackgroundProcess
SGA:startupnomount時(shí)就被安排,寫在參數(shù)文件里。
SGA_MAX_Size--------SGA區(qū)最大大
顆粒:連續(xù)的虛擬內(nèi)存安排。顆粒大小取決于SGA_MAX_SIZE的大小,
SGA_MAX_SIZE<128M,顆粒為4M,否則顆粒為16M.
SGA啟動(dòng)時(shí),每個(gè)組成部分會(huì)要求盡可能多的顆粒。固定的SGA至少
會(huì)要求3個(gè)顆粒(包括redobuffers1個(gè)顆粒,DatabaseBufferCache
1個(gè),Sharepoorl個(gè)顆粒)
SharedPool:用于存放最近執(zhí)行的SQ1代碼和最近的數(shù)據(jù)定義,包含
LibraryCache和DataDictionaryCache,大小由shared_pool_size
確定,
LibraryCache(存放statementtext,SQ1解析代碼和解析安排,以避
開表述被重解析)
?StoresinformationaboutthemostrecentlyusedSQLand
PL/SQLstatements
?Enablesthesharingofcommonlyusedstatements
?Ismanagedbyaleastrecentlyused(LRU)algorithm
?Consistsoftwostructures:
-SharedSQLarea
-SharedPL/SQLarea
?SizedeterminedbytheSharedPoolsizing
DataDictionaryCache:包含從數(shù)據(jù)字典表對表,列,權(quán)限的定義.
DatabaseBufferCache:包含3個(gè)獨(dú)立的子cache,統(tǒng)計(jì)信息由
v$DB_CACHE_ADVICE
DB_CACHE_SIZE:定義標(biāo)準(zhǔn)Block默認(rèn)的BufferCache;至少一個(gè)顆
粒。
buffercache分為default,keep,recycle.
DB_KEEP_CACHE_SIZE:對應(yīng)用于存放常常存放的數(shù)據(jù)的緩沖池大
小。
DB_RECYCLE_CACHE_SIZE:用于存放一次性數(shù)據(jù)緩沖池大小。
RedoLogBuffer:記錄數(shù)據(jù)庫Block的變更,主要用于復(fù)原,大小由
Log_Buffer確定。
LargePool:用于分擔(dān)SharedPool池負(fù)擔(dān),主要用于RMAN備份中和共
享服務(wù)器模式下!不運(yùn)用LRUList,大小由Large_PooLSize確定。
JavaPool:存放Java吩咐和代碼,大小由Java_Pool_Size確定。
共享服務(wù)器模式:多個(gè)客戶機(jī)連接共享一個(gè)已安排數(shù)據(jù)庫的共享池,假如
須要并行連接到數(shù)據(jù)庫并有效運(yùn)用系統(tǒng)資源的用戶較多,請運(yùn)用該模式,
此時(shí)將啟用oracle共享服務(wù)器模式。
專用服務(wù)器模式:數(shù)據(jù)庫將為每一個(gè)客戶機(jī)連接安排專用資源,當(dāng)預(yù)期客
戶機(jī)連接總數(shù)較小或客戶機(jī)向數(shù)據(jù)庫發(fā)出的懇求連續(xù)時(shí)間較長,運(yùn)用該模
式。
PGA:用戶獨(dú)占,有用戶連接啟動(dòng)服務(wù)器進(jìn)程時(shí)安排,包括4個(gè)部分:
1)用戶會(huì)話信息
2)用戶curse信息
3)排序區(qū)大?。恳粋€(gè)用戶連接,就安排一個(gè)排序區(qū))
4)堆棧信息
后臺(tái)進(jìn)程:
DBWR會(huì)觸發(fā)LGWR,但DBWR和LGWR之間相互獨(dú)立,無確定的先
后依次。
要深刻理解5類后臺(tái)發(fā)生的條件與所作的操作
Checkpoint發(fā)生時(shí)所作的操作:
?DBWnwritesanumberofdirtydatabasebuffers,whichare
coveredbythelogthatisbeingcheckpointed,tothedatafiles.
?ThecheckpointbackgroundprocessCKPTupdatesthecontrol
reflectthatithascompletedacheckpointsuccessfully.Ifthe
checkpointiscausedbyalogswitch,
CKPTalsoupdatestheheadersofthedatafiles.
?Checkpointscanoccurforalldatafilesinthedatabaseoronly
forspecificdatafiles.
Checkpoint發(fā)生的條件:
?日志切換時(shí)switchlogfile
?實(shí)例以normal,transactional,orimmediate選項(xiàng)關(guān)閉時(shí)。
?WhenforcedbysettingtheFAST_START_MTTR_TARGET
initializationparameter
?Whenmanuallyrequestedbythedatabaseadministrator
?WhentheALTERTABLESPACE[OFFLINENORMAL|READ
ONLY|BEGINBACKUP]commandcausescheckpointingon
specificdatafiles
SCNistheSystemChangeNumber,
sequentiallyassignedbyLGWR,toindicatethe“time”ofa
commit,rollbackorcheckpoint
Thefullcheckpointisonlydone:
?ALTERSYSTEMCHECKPOINT
?SHUTDOWN(exceptabort)
Alogswitchdoesnotperformafullcheckpoint.
buffer內(nèi)容被寫到磁盤,僅僅表示該buffer可以被覆蓋(其他進(jìn)程可
以pin住這個(gè)buffer讀block進(jìn)來),并不表示這個(gè)butter里面的數(shù)據(jù)
就沒了,至于被踢走更是一個(gè)模糊的說法。
全部DirtyBuffer,首先要被移動(dòng)到DirtyList上去,然后從DirtyList
上被寫出。一旦Buffer變得Dirty,在被寫出之前都不能被重用。也就是
不存在Hot/Cold之說了。Hot/Cold是針對LRUL運(yùn)3并非DirtyListo
加深(有價(jià)值的)文章
1)oracle體系結(jié)構(gòu)介紹.pdf(en).
2)redologsandrecoveiy.ppt,checkpointconstructor.ppt(講
redolog,rollforward&back徹的)
3)ITPUB第十期
4)oracle內(nèi)存安排與調(diào)整.pdf(bybiti.rainy)
5)oracle中須要牢牢記住的幾個(gè)進(jìn)程觸發(fā)條件
Gettingstartedwiththeoracleserver
l)useDBCAcreate/configure/del/manageDB
theusageoftemplatesofdbca:創(chuàng)建好數(shù)據(jù)庫模板后,下次用DBCA
時(shí)會(huì)出現(xiàn)以前創(chuàng)建的模板!
Sys,system都是在創(chuàng)建數(shù)據(jù)庫時(shí)自動(dòng)創(chuàng)建,并被給予了DBA角色(記
住,sysdba,sysper是權(quán)限,dba是角色),它們的初始密碼分別是
change_on_install和managero
Ora-12560錯(cuò)誤緣由(更多地出現(xiàn)在windows主機(jī)上):
一臺(tái)host上安裝了多個(gè)DB,但連接時(shí)沒有指定,可用setoracle_sid=***
OracleOEM:為DBA供應(yīng)了一個(gè)集中管理多個(gè)oracle數(shù)據(jù)庫節(jié)點(diǎn)的圖
形工具。
創(chuàng)建OEM的步驟:
1)在客戶端利用EnterpriseManagerConfigurationAssitant創(chuàng)建
repository資料檔案庫(創(chuàng)建過程中會(huì)讓你在server端指定新建一個(gè)
用戶,一個(gè)OEM_reposity表空間)。
2)在客戶端主機(jī)上,啟動(dòng)相關(guān)服務(wù)(Managementserver,Agent)
3)在客戶端啟動(dòng)OEM限制臺(tái)
以sysman/oem_temp用戶登陸(sysman用戶是默認(rèn)存在于客戶端
的圖形化工具里的,系統(tǒng)此時(shí)會(huì)提示你修改sysman密碼。
說明:也可以選擇獨(dú)立啟動(dòng)進(jìn)入OEM,用這種方法就不須要上面的步
驟。但此時(shí)的OEM的功能會(huì)少許多。
4)連接server端數(shù)據(jù)庫,輸入你在創(chuàng)建數(shù)據(jù)庫時(shí)新建的用戶名與密碼或
以sys用戶登陸。
說明:建好OEM后又修改了sys密碼,可能須要重建repository。
3o管理oracle實(shí)例
sp的相互創(chuàng)建
spfile是二進(jìn)制文件,oracle舉薦,RMAN已把spfile納入備份體系中。
createsppfile(若該吩咐不能運(yùn)行,證明instance由spfile啟動(dòng))
修改靜態(tài)參數(shù)時(shí),又想從spfile啟動(dòng),可以:
1)shutdowndb
2)editpfile
3)createsppfile
4)startup
應(yīng)常常同步P
(動(dòng)態(tài))修改spfile的參數(shù)
altersystemsetundo_tablespace=undo2
(不加scope表示就是both,默認(rèn)也是both,假如只想在memoryor
spfile兩者中選其一,就須要在scope里說明.
ALTERSYSTEMRESETundo_suppress_errorsSCOPE=BOTH
SID=';刪除或重設(shè)參數(shù)
Orderofprecedence:
sp>DefaultSPFILE>initSID.ora>DefaultPFILE
DB啟動(dòng)的3個(gè)步驟
1)nomount(讀sp,初始化SGA)
2)mount(讀限制文件)
3)open(讀限制文件描述的各個(gè)文件并檢查一樣性)
session:一個(gè)用戶的連接
transaction:事務(wù),一次修改或select。
Alert_SID.log(對應(yīng)background_dump_dest)實(shí)例的監(jiān)控調(diào)試文件
UserTraceFiles(對應(yīng)USER_DUMP_DEST),大小由MAX_DUMP_
EnablingorD運(yùn)ablingUserTracing
?會(huì)話級:
ALTERSESSIONSETSQL_TRACE=TRUE
dbms_system.SET_SQL_TRACE」N_SESSION
?事例級在參數(shù)文件里設(shè)置:SQL_TRACE=TRUE
加深(有價(jià)值的)文章:P文件(byeygle)
4.創(chuàng)建數(shù)據(jù)庫
數(shù)據(jù)庫管理的認(rèn)證方式(須要查找文章細(xì)致看):
I)OS認(rèn)證
2)password文件(參數(shù)文件只保存sys用戶的口令,其他用戶包括
system用戶的口令都保存在數(shù)據(jù)字典中。
語法orapwdpassword=abc123entries=5
entries:最多有sys用戶權(quán)限的用戶數(shù)量
初始化文件里的參數(shù)remote_login_password_
---look/opt/rdbms/admin/buildall.sql
createdatabasedbOl
maxlogfiles10
maxdatafiles1024
maxinstances2
logfile
GROUP1(7u01/oradata/dbO1/log^Ol_dbO1.rdo*)SIZE
15M,
GROUP2(7u01/oradata/dbO1/log_02_db01.rdo')SIZE
15M,
GROUP3C/uO1/oradata/dbO1/log_03_db01.rdo')SIZE
15M,
datafile'uO1/oradata/dbO1/system_0l_dbO1.dbf)SIZE100M,
undotablespaceUNDO
datafile'/uO1/oradata/dbO1/undo_0l_dbO1.dbfSIZE40M
defaulttemporarytablespaceTEMP
tempfile7uOl/oradata/dbOl/temp_Ol_dbOl.dbfSIZE20M
extentmanagementlocaluniformsize128k
charactersetAL32UTE8
nationalcharactersetAL16UTF16
settime_zone=,America/New_York';
創(chuàng)建數(shù)據(jù)庫最好的方法:舉薦用DBCA
用手工創(chuàng)建比較困難!
數(shù)據(jù)庫管理的認(rèn)證方式(須要找文章看)
圖解oracle口令認(rèn)證方法
我們在linuxtEoracle安裝完畢后我們可以通過下邊的吩咐進(jìn)入數(shù)據(jù)庫.
$cd$ORACLE_HOME/dbs
$sqlplus"/assysdba”
SQL>showuser
USERis"SYS"
并沒有讓我們輸入用戶名和密碼
這就是說.用戶只要登陸到LINUX系統(tǒng)就可以進(jìn)入到ORACLE數(shù)據(jù)庫系
統(tǒng)里.這樣對ORACLE的平安有許多隱患.
下面我們就ORACLE進(jìn)行設(shè)置使它必需輸入用戶名和密碼才能進(jìn)入.
首先我們修改參數(shù)文件.將參數(shù)文件
REMOTE_LOGIN_PASSWORDFILE修改為EXCLUSIVE(一般默認(rèn)
就是EXCLUSIVE.假如不是改成.參數(shù)文件一般在
/opt/oracle/admin/ora9i/pfile/下)
除了參數(shù)文件我們還要修改網(wǎng)絡(luò)配置文件SQLNET.ORA以變更數(shù)據(jù)庫
的人證方式.
該文件位于/opt/oracle/product/9.2/network/admin/sqlnet.ora
在SQLNET.ORA增加一行
SQLNET.AUTHENTICATION_SERVICES=(NTS)
這時(shí)候我們在輸入$sqlphisVassysdba"會(huì)要求你輸入用戶名和密
碼.
sqlplus"/assysdba"
SQL*Plus:Release.4.0-ProductiononSunSep316:18:442006
Copyright(c)1982,2002,OracleCorporation.Allrightsreserved.
ERROR:
ORA-01031:insufficientprivileges
Enteruser-name:
這時(shí)我們輸入用戶名和密碼也不能進(jìn)入.我們應(yīng)當(dāng)這么書寫
$sqlplus"sys/你的密碼assysdba”
就可以進(jìn)入了!
這個(gè)方法對ORACLE9.2以上版本特別有效.
5.運(yùn)用數(shù)據(jù)字典或動(dòng)態(tài)性能視圖
數(shù)據(jù)字典:DB的核心,sys用戶擁有,保存在system表空間,描述數(shù)據(jù)
庫與其對象,為只讀,通過select來查詢。
數(shù)據(jù)字典包含:1)基礎(chǔ)表:保存DB的描述,由createdb時(shí)的sql.bsl
創(chuàng)建
2)數(shù)據(jù)字典視圖:用于簡化基礎(chǔ)表信息,通過公用別名
來訪問,由catalog.sql創(chuàng)建。
Catproc.sql:創(chuàng)建PL/SQL的環(huán)境。
數(shù)據(jù)字典視圖類別:
DBA_XXX:全部對象
ALL_XXX:用戶所能訪問的全部對象
USER.XXX:用戶所擁有的全部對象
通用視圖:DICTIONARY(可查全部數(shù)據(jù)字典),DICT_COLUMNS
SCHEMA對象:DBA_TABLES,DBA」NDEXES,
DBATABCOLUMNS,DBACONSTRAINS
空間安排:DBA.SEGMENTS,DBA.EXTENTS
數(shù)據(jù)庫結(jié)構(gòu):DBA.TABLESPACES,DBA_DATA_FILES
動(dòng)態(tài)性能表:sys用戶擁有,記錄數(shù)據(jù)庫當(dāng)前活動(dòng)的虛擬表,存在于內(nèi)存
中,以V$開頭,在v$fixed_table中列出。
?V$DATABASE
?V$DATAFILE
?V$INSTANCE
?V$PARAMETER
?V?SESSION
?V$SGA
?$SPPARAMETER
?V$TABLESPACE
?V$THREAD
?V$VERSION
setwrapoff
user_tables;
all_tables;
dba_tables;
6管理限制文件
當(dāng)數(shù)據(jù)庫的結(jié)構(gòu)發(fā)生變更的時(shí)候,限制文件隨即發(fā)生變更。
添加限制文件步驟:
l)sql>altersystemset
control_files=7opt/oradata/uO1/ctrlOl.ctl',
7opt/oradata/u01/ctrl02.ctTscope=spfile;(必需加spfile,因?yàn)樾薷?/p>
不能寫到內(nèi)存里
2)sql>shutdownimmediate;
3)cp/opt/oradata/uO1/ctrlO1.ctl/opt/oradata/uO1/ctrl02.ctl
1)startup;
重要的視圖:
V$CONTROLFILE:
V$PARAMETER:
V$CONTROL:
V$BACKUP
V$DATAFILE
V$TEMPFILE
V$TABLESPACE
V$ARCHIVE
V$LOG
V$LOGFILE
V$LOGHIST
V$ARCHIVED_LOG
V$DATABASE
showparametercontrol;
select*fromv$control;
select*fromv$tempfile;
備份限制文件
alterdatabasebackupcontrol*../*;
備份限制文件,并將二進(jìn)制限制文件變?yōu)榱薬rc的文本文件
alterdatabasebackupcontroltrace;
限制文件在備份中意義重大,建議每次對其單獨(dú)備份。同時(shí)應(yīng)當(dāng)增大
CONTROL.這個(gè)初始化參數(shù)的值。以便備份信息能更長時(shí)間的保留。
7管理在線重做日志
redolog會(huì)記錄數(shù)據(jù)庫的全部操作,不僅僅只包括修改操作!
Redologswitch時(shí)會(huì)觸發(fā)checkpoint,同時(shí)信息會(huì)寫到controlfile里。
altersystemswitchlogfile;強(qiáng)行進(jìn)行一次日志switch,歸檔/非歸檔均
可運(yùn)用
altersystemarchivelogcurrent;強(qiáng)行歸檔并進(jìn)行日志切換,用于歸檔
模式下
altersystemcheckpoint;一強(qiáng)缶!j進(jìn)行一次checkpoint
FAST_START_MTTR_TARGET:checkpoint同步頻率參數(shù),91新參
數(shù),表示將來系統(tǒng)crash后你期望recover的時(shí)間。用來替代以前版本里
的FAST_START_IO_TARGET,LOG_CHECKPOINT_TIMEOUT
將參數(shù)LOG_CHECKPOINT_TO_ALERT設(shè)為true(默認(rèn)為false),系統(tǒng)
會(huì)將每個(gè)SCN記錄在alert_SID.log里!
加入一個(gè)日志組
alterdatabaseaddlog3('opt/oracle/log6.rdo'size10M);
向日志組中加入一個(gè)成員
alterdatabaseaddlog'/opt/oracle/log6b.rdo'togroup3;
刪除日志組:當(dāng)前日志組不能刪;活動(dòng)的日志組不能刪;非歸檔的日志組不
能刪
alterdatabasedroplog3;
刪除日志組中的某個(gè)成員,但每個(gè)組的最終一個(gè)成員不能被刪除???????
alterdatabsedroplog'/opt/oracle/log6,rdo';
redolog的狀態(tài):
1)inactive:非活動(dòng)的狀態(tài)
2)active:活動(dòng)的狀態(tài),oracle認(rèn)為可疑的狀態(tài)
3)current:當(dāng)前將要寫的redolog,執(zhí)行歸檔后,current之前的redo
log確定也必需被歸檔,否則數(shù)據(jù)庫處于掛死狀態(tài)。
4)unused:新增加的redolog狀態(tài)
重命名日志文件
1—shutdownimmediate;
2--移動(dòng)onlineredolog
3—startupmount
4—alterdatabase
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 子癇的緊急護(hù)理措施
- 大豐市小海中學(xué)高中化學(xué)檢測期末串講(上)
- 2025-2026學(xué)年人教版(2024)初中美術(shù)七年級(上冊)期末測試卷附答案
- 2025年保險(xiǎn)代理協(xié)議
- 城市氣候適應(yīng)
- 基于機(jī)器學(xué)習(xí)的緩存預(yù)測技術(shù)
- 2026 年中職康復(fù)治療技術(shù)(康復(fù)治療基礎(chǔ))試題及答案
- 專注閱讀題目及答案
- VR虛擬現(xiàn)實(shí)體驗(yàn)平臺(tái)運(yùn)營合同協(xié)議2025年細(xì)則
- 基于物聯(lián)網(wǎng)的智能監(jiān)控
- 2025年云南省人民檢察院聘用制書記員招聘(22人)備考筆試題庫及答案解析
- 2026屆四川涼山州高三高考一模數(shù)學(xué)試卷試題(含答案詳解)
- 銀行黨支部書記2025年抓基層黨建工作述職報(bào)告
- 腫瘤標(biāo)志物的分類
- 2025山西忻州市原平市招聘社區(qū)專職工作人員50人考試歷年真題匯編附答案解析
- 中藥煎煮知識與服用方法
- 2026東莞銀行秋季校園招聘備考題庫及答案詳解(基礎(chǔ)+提升)
- 消防水泵房管理制度及操作規(guī)程
- 野戰(zhàn)軍生存課件
- 《民航概論》期末考試復(fù)習(xí)題庫(附答案)
- 2025年學(xué)校工會(huì)工作總結(jié)范文(5篇)
評論
0/150
提交評論