ORACLE數(shù)據(jù)庫理論及應(yīng)用_第1頁
ORACLE數(shù)據(jù)庫理論及應(yīng)用_第2頁
ORACLE數(shù)據(jù)庫理論及應(yīng)用_第3頁
ORACLE數(shù)據(jù)庫理論及應(yīng)用_第4頁
ORACLE數(shù)據(jù)庫理論及應(yīng)用_第5頁
已閱讀5頁,還剩52頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

ORACLE數(shù)據(jù)庫理論及應(yīng)用WhoamI?軟件工程系主講:王永貴Email:YGHL2000@ORACLE的基本架構(gòu)ORACLE數(shù)據(jù)庫數(shù)據(jù)對象的管理備份與恢復(fù)性能的調(diào)整與優(yōu)化ORACLE對象數(shù)據(jù)庫及其實現(xiàn)課程內(nèi)容課程目標了解并掌握oracle的體系統(tǒng)結(jié)構(gòu)了解大部分的PL/SQL命令管理數(shù)據(jù)庫備份及恢復(fù)數(shù)據(jù)庫ORACLE數(shù)據(jù)庫的性能調(diào)整及簡單優(yōu)化參考書籍

清華大學(xué)出版社

《ORACLE數(shù)據(jù)庫系統(tǒng)基礎(chǔ)》俞盤祥

《數(shù)據(jù)庫管理及應(yīng)用開發(fā)》沈佩娟

湯荷美

電子工業(yè)出版社

《ORACLE數(shù)據(jù)庫管理員教程》

孫宏昌金毳

高性能、伸縮性安全性:角色、權(quán)限、用戶并發(fā)控制:表鎖定、行鎖定海量數(shù)據(jù):表空間、空間數(shù)據(jù)構(gòu)件TB級數(shù)據(jù)完整性:日志、回滾段分布式數(shù)據(jù)庫:數(shù)據(jù)庫連接Web數(shù)據(jù)庫,方便得web編程方式對象數(shù)據(jù)庫,全新的ODBMSOracle特點1.2Oracle9i數(shù)據(jù)庫的基礎(chǔ)知識Oracle的發(fā)展歷程Oracle9i的產(chǎn)品組成Oracle9i的新特性O(shè)racle9i的工作模式Oracle的發(fā)展歷程1977年開始研發(fā),創(chuàng)始人為LarryEllison,BobMiner,EdOates。Oracle9i是一個面向Web的數(shù)據(jù)庫,支持多媒體數(shù)據(jù),支持龐大的訪問量,支持Java編程。ORACLE公司美國總部資料Oracle總裁Larry

Ellison埃里森在32歲以前他還一事無成,讀了三個大學(xué),沒得到一個學(xué)位文憑,換了十幾家公司,老婆也離他而去,開始創(chuàng)業(yè)時只有1200美元,卻使得oracle公司連續(xù)十二年銷售額每年翻一翻,成為世界上第二大的軟件公司,他自己也成為硅谷首富.ellison的經(jīng)營手腕和強力,擊敗了一個又一個的對手,ellison要打倒的最后一個目標就是軟件帝國之王微軟的比爾.蓋茨。

ellison被財富雜志列為世界上第五富的人,他擁有的oracle是世界上最大的數(shù)據(jù)庫軟件公司.oracle公司也許并不為大眾所知,但當你從自動提款機上取錢,或者在航空公司預(yù)定航班,或者將家中電視連上internet網(wǎng),你就在和oracle打交道,oracle的客戶大

多是赫赫有名,名列財富500家的大型公司。為了紀念他的突出成就,現(xiàn)Scott是Oracle系統(tǒng)的默認登錄用戶名之一。BruceScott現(xiàn)在是公司發(fā)起人之一

Oracle9i的新特性O(shè)racle9i數(shù)據(jù)庫與以前的版本相比,在多方面都有著新的突破:高可用性(Availability)可伸縮性(Scalability)高性能(Performance)高安全性(Security)智能管理功能集成的電子商務(wù)應(yīng)用開發(fā)平臺

本課程的學(xué)習(xí)方式課堂認真聽講上機完成布置的作業(yè)課后多渠道查找相關(guān)資料不懂的東西多請教。學(xué)習(xí)本課今后相關(guān)就業(yè)方向數(shù)據(jù)庫軟件工程師DBA數(shù)據(jù)庫系統(tǒng)管理員數(shù)據(jù)庫前端軟件開發(fā)人員大公司信息化辦公文員銀行職員其他課程考核本課程的成績有平時成績和期末考試成績二部分組成,其中平時成績占20%,期末考試成績占80%。平時成績:課堂提問、上機實踐、出勤及學(xué)習(xí)態(tài)度。其中:課堂提問:每位學(xué)生一學(xué)期下來都有至少1次提問機會。上機實踐:依據(jù)完成快慢、解決問題方式的優(yōu)劣考核。出勤:分為出勤、遲到、曠課、請假4種情況。其中遲到一次扣1分。曠課1次扣2分。請假不扣分。累計扣分不超過10分。期末考試的形式為開卷,考試時間為120分鐘。題型有:填空、判斷、簡答、編程等,主要考察學(xué)生對所學(xué)理論知識的掌握程度。謝謝演講完畢,謝謝觀看!附錄資料:不需要的可以自行刪除?oracle數(shù)據(jù)庫培訓(xùn)內(nèi)容*基本概念*Oracle的體系結(jié)構(gòu)SQL*Plus的使用及常用命令*SQL*NET的配置和使用數(shù)據(jù)庫的備份(exp/imp)其它常見問題?一、基本概念什么是數(shù)據(jù)庫:是存儲在一起的相關(guān)數(shù)據(jù)的集合。這些數(shù)據(jù)無有害或不必要的冗余,為多種應(yīng)用服務(wù)。數(shù)據(jù)的存儲獨立于使用它的應(yīng)用程序。對數(shù)據(jù)庫插入新數(shù)據(jù)、修改和檢索原有數(shù)據(jù)均能用一種公用的和可控的方法進行。數(shù)據(jù)庫能做什么:數(shù)據(jù)庫的基本功能就是存儲數(shù)據(jù),而且能夠為用戶提供便捷、快速的查找、修改、添加和刪除數(shù)據(jù)等功能。什么是SQL語言:是運用于數(shù)據(jù)庫的語言。它除了具有數(shù)據(jù)庫查詢、插入、刪除、修改等功能外,可以獨立使用,也可以嵌入其它主語言中使用。它的語法類似于英語。?什么是oracle:oracle是以高級結(jié)構(gòu)化查詢語言(SQL)為基礎(chǔ)的大型關(guān)系數(shù)據(jù)庫,通俗地講它是用方便邏輯管理的語言操縱大量有規(guī)律數(shù)據(jù)的集合。是目前最流行的客戶/服務(wù)器(CLIENT/SERVER)體系結(jié)構(gòu)的數(shù)據(jù)庫之一。?二、Oracle的體系結(jié)構(gòu)(1)物理結(jié)構(gòu)

ORACLE數(shù)據(jù)庫在物理上是存儲于硬盤的各種文件。它是活動的,可擴充的,隨著數(shù)據(jù)的添加和應(yīng)用程序的增大而變化。datafilesredologfilescontrolfilesparameterfile

數(shù)據(jù)文件日志文件控制文件參數(shù)文件

datafilesredologfilescontrolfileparameterfiles*.dbf*.logInitoraid.ora*.ctl?(2)session(連接)

Oracle是多用戶、多任務(wù)、可分布式管理的數(shù)據(jù)庫,同

時可有許多個用戶對數(shù)據(jù)庫操作。oracleuseruserusersession……?

ORACLE數(shù)據(jù)庫在邏輯上是由許多表空間構(gòu)成。主要分為系統(tǒng)表空間和非系統(tǒng)表空間。非系統(tǒng)表空間內(nèi)存儲著各項應(yīng)用的數(shù)據(jù)、索引、程序等相關(guān)信息。我們準備上馬一個較大的ORACLE應(yīng)用系統(tǒng)時,應(yīng)該創(chuàng)建它所獨占的表空間,同時定義物理文件的存放路徑和所占硬盤的大小。Oracle數(shù)據(jù)存儲單位a、block數(shù)據(jù)塊:2k最小的I-O單位,伴隨database產(chǎn)生而產(chǎn)生,不可變b、extent一組連續(xù)的數(shù)據(jù)塊:是用戶所能分配存儲的最小單位c、segment段:有共同結(jié)構(gòu)的一個或幾個區(qū)域(extent)d、tablespace表空間:一組物理數(shù)據(jù)的邏輯組合,(象邏輯間數(shù)據(jù)倉庫)e、file文件:屬于某個表空間的物理文件f、database數(shù)據(jù)庫:一組表空間所構(gòu)成的邏輯的可共享的數(shù)據(jù)。(3)存儲結(jié)構(gòu)?表空間tablespacesystemRBSnosystem把system表空間單獨放在一個硬盤上做成一組鏡像toolsuserstempapplicationdataapplicationindex分開存放減少爭用?segment段的分類data數(shù)據(jù)段存儲對象object(table,view,index,sequence...)index索引段temporary臨時段用做(join,groupby,orderbysorting操作)rollback回滾段用于記錄修改前后信息bootstrap啟動段存儲數(shù)據(jù)字典系統(tǒng)信息不能讀寫,放在系統(tǒng)表空間內(nèi),約占40幾個block?datasegment中可能有十種不同類型的存儲對象(1)table(2)view實為一個select語句(3)index(一個表不多于3個)(4)cluster(簇)(5)sequence序列(6)synonyms用于定義某個遠程數(shù)據(jù)庫同義詞,實現(xiàn)分式數(shù)據(jù)庫管理透明(7)snapsot快照(8)storedprocedure(function)(9)package程序包(10)dbtrigger數(shù)據(jù)觸發(fā)器,處理updata,delete,insert中可能出現(xiàn)的問題?常用的ORACLE的數(shù)據(jù)庫字段類型字段類型中文說明限制條件其它說明CHAR固定長度字符串最大長度2000bytesVARCHAR2可變長度的字符串最大長度4000bytes可做索引的最大長度749DATE日期(日-月-年)LONG超長字符串最大長度2G(231-1)足夠存儲大部頭著作RAW固定長度的二進制數(shù)據(jù)最大長度2000bytes可存放多媒體圖象聲音等LONGRAW可變長度的二進制數(shù)據(jù)最大長度2G同上NUMBER(P,S)數(shù)字類型P為整數(shù)位,S為小數(shù)位INTEGER整數(shù)類型小的整數(shù)FLOAT浮點數(shù)類型NUMBER(38),雙精度REAL實數(shù)類型NUMBER(63),精度更高……?三、SQL*Plus的使用及常用命令進入sql*plus;數(shù)據(jù)查詢操作(select);改變數(shù)據(jù)操作(insert、update、delete);其它常用sql和sql*plus命令(spool、create、drop、desc、connect、grant……)。?數(shù)據(jù)查詢操作簡單查詢select列名1,列名2,列名3……from表名where條件orderby列名1,列名2……;?邏輯運算符>>=<<=<>或!=其它(not)inis(not)betweenandandor單值函數(shù)nvl----空值替換函數(shù)abs---絕對值函數(shù)mod---求模函數(shù)power---求冪函數(shù)sqrt-----平方根函數(shù)exp,ln,log----對數(shù)函數(shù)sin,cos等----三角函數(shù)?唯一性查詢關(guān)鍵字:distinctselectdistinct列名from表名where條件;?模糊查詢select列名1,列名2,列名3……from表名where列名1like‘_%mm’orderby列名1,列名2……;關(guān)鍵字:(not)like通配符:%_?聯(lián)接查詢select表名1.列名1,表名2.列名2,列名3……from表名1,表名2……where條件orderby表名1.列名1,表名2.列名2……;?子查詢單值子查詢

多值子查詢select列名1,列名2,列名3……from表名1where列名1=(select列名1from表名2where條件)orderby列名1,列名2……;select列名1,列名2,列名3……from表名1where列名1in(select列名1from表名2where條件)orderby列名1,列名2……;?組值函數(shù)avg---平均值函數(shù)count---非空值數(shù)目max---最大值函數(shù)min---最小值函數(shù)sum---求和函數(shù)distinct---唯一性函數(shù)分組查詢select列名1,列名2,sum(列名3)……from表名where條件groupby列名1,列名2……;關(guān)鍵字:groupby?改變數(shù)據(jù)操作Insert插入操作insertinto表名1(列名1,列名2……)values(值1,值2……);注意:⑴值表中的數(shù)據(jù)用逗號間隔;⑵字符型和日期型要用單引號括起來;⑶缺省的日期格式為dd-man-yy。insertinto表名1usingselect列名1,列名2……from表名2where條件;?Update修改操作可修改單個字段、修改多行、修改單個列。update表名set列名=值或表達式where條件;?Delete刪除deletefrom表名where條件;注意⑴不能只刪除行的一部分⑵where子句決定哪一行將被刪除。如里省略了where子句,則所有的行都將被刪除。?其它常用sql命令Createtable---創(chuàng)建表;例子Droptable---刪除表,sql同時自動刪除該表上的索引、特權(quán),但并不刪除相關(guān)的視圖或同義詞;Grant---授權(quán)Connect-----連上Oracle,做最基本操作resource----具有程序開發(fā)最基本的權(quán)限dba----------數(shù)據(jù)庫管理員所有權(quán)限?@-------運行指定的命令文件,作用等價于start命令;/---------運行sql緩沖區(qū)的命令,與run命令等價;Connect---退出當前賬號,向指定的用戶帳號登錄;Desc-----顯示指定表的結(jié)構(gòu);Exit-----中止sql*plus,返回操作系統(tǒng);Spool---將屏幕顯示內(nèi)容輸出到一個文件上;Spooloff--輸出文件結(jié)束;其它常用sql*plus命令?四、SQL*NET的配置和使用1配置網(wǎng)絡(luò)協(xié)議TCP/IP

2測試網(wǎng)絡(luò)是否連通3在Windows95上選擇“開始”按鈕,選定“程序”中的“OracleforWindows95”下的“SQL*NetEasyConfiguration”,在“SQL*NetEasyConfiguration”窗口中選擇“AddDatabaseAlias”,在“ChooseDatabaseAlias”對話框中“DatabaseAlias”項中鍵入數(shù)據(jù)庫別名,按“OK”按鈕確認。

在“ChooseTCP/IPHostNameandDatabase”對話框中的TCP/IPHostname項中鍵入SERVER的IP地址,在“DatabaseInstance”項中鍵入Oracle的實例名。在“ConfirmAddingDatabaseAlias”對話框中可以看到你新增加的數(shù)據(jù)庫別名。按“YES”按鈕,按“OK”,退出“SQL*NetEasyConfiguration”。?五、數(shù)據(jù)庫備份(exp/imp)EXPORT將數(shù)據(jù)庫中數(shù)據(jù)備份成一個二進制系統(tǒng)文件稱為“導(dǎo)出轉(zhuǎn)儲文件”(EXPORTDUMPFILE),并將重新生成數(shù)據(jù)庫寫入文件中。它有三種模式:a.用戶模式:導(dǎo)出用戶所有對象以及對象中的數(shù)據(jù);b.表模式:導(dǎo)出用戶所有表或者指定的表;c.整個數(shù)據(jù)庫:導(dǎo)出數(shù)據(jù)庫中所有對象。IMPORT導(dǎo)入:導(dǎo)入的過程是導(dǎo)出的逆過程,這個命令先讀取導(dǎo)出來的導(dǎo)出轉(zhuǎn)儲二進制文件,并運行文件,恢復(fù)對象用戶和數(shù)據(jù)。?數(shù)據(jù)庫導(dǎo)出過程exp80用戶名/密碼Enterarrayfetchbuffersize:4096>exportfile:expdat.dmp>(1)Entiredatabase(2)Users(3)Table:(2)Users>Exportgrants:yes>Exporttabledata:yes>Conpressextents:yes>Usertobeexport>……Exportingtable、synonyms、view、grant等……Exportterminatedsuccessfullywithoutwarning.?導(dǎo)出選項關(guān)鍵字內(nèi)容USERID運行導(dǎo)出命令的帳號的用戶名/口令。BUFFEER用來取數(shù)據(jù)行的緩沖區(qū)的大小。FILE導(dǎo)出轉(zhuǎn)儲文件的名字COMPRESS導(dǎo)出是否應(yīng)該壓縮有碎片的段成一個范圍GRANTS導(dǎo)出時否要導(dǎo)出數(shù)據(jù)庫對象上的授權(quán)INDEXES是否要導(dǎo)出表上的索引ROWS是否應(yīng)導(dǎo)出行。如它為‘N’,那么在導(dǎo)出文件中僅生成數(shù)據(jù)庫對象的DDLCONSSTRAINTS是否導(dǎo)出表舊的約定條件FULL如設(shè)為‘Y’,那么將執(zhí)行一個整個數(shù)據(jù)庫導(dǎo)出操作OWNER要導(dǎo)出的一系列數(shù)據(jù)庫帳號,然后執(zhí)行這些帳號的USER導(dǎo)出操作TABLES要導(dǎo)出的一系列表;執(zhí)行這些表的TABLE導(dǎo)出操作?導(dǎo)出選項關(guān)鍵字內(nèi)容RECORDLENGTH轉(zhuǎn)儲導(dǎo)出文件日志的長度(以字節(jié)為單位),通常都使用缺省,除非要在兩個不同操作系統(tǒng)中傳遞導(dǎo)出文件INCTYPE正在執(zhí)行的導(dǎo)出操作的類型(有效值有”COMPLETE“(缺省值),CUMULATIVE”和“IVCREMENTAL”)RECORD在增量導(dǎo)出類型中的一個標記,標明是否將日志存儲到數(shù)據(jù)字典中日志導(dǎo)出的表中PARFILE要傳遞給導(dǎo)出的參數(shù)文件的名字。這個文件將包含所有參數(shù)的入口項ANALYZE標明是否將移對象的統(tǒng)計信息寫入導(dǎo)出轉(zhuǎn)儲文件中CONSISTENT標明是否保留所有導(dǎo)出對象的讀取一致復(fù)制。LOG導(dǎo)出日志將要寫入的文件的名字MLS標明是否要導(dǎo)出MLS標號MLS_LABEL_規(guī)定了MLS標號的格式?數(shù)據(jù)庫恢復(fù)Imp80用戶名/密碼Importfile:expdat.dmp>?導(dǎo)入選擇項關(guān)鍵字內(nèi)容USERID運行導(dǎo)入命令的帳號的用戶名/口令。BUFFEER用來取數(shù)據(jù)行的緩沖區(qū)的大小。FILE導(dǎo)入轉(zhuǎn)儲文件的名字SHOW規(guī)定文件內(nèi)容是否被顯示,而不是被執(zhí)行。EGORE標明在執(zhí)行‘CREATE’命令時,是否忽略遇到的錯誤。如果正在導(dǎo)入的對象已經(jīng)存在時,應(yīng)使用這個參數(shù)。FULL如設(shè)為‘Y’,那么將執(zhí)行一個整個數(shù)據(jù)庫導(dǎo)入操作FROMUSER在F

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論