第一篇:Access數(shù)據(jù)表內(nèi)容導(dǎo)入Oracle心得
Access數(shù)據(jù)表內(nèi)容導(dǎo)入Oracle
產(chǎn)生該需求原因:
在實(shí)現(xiàn)中鋁網(wǎng)站過(guò)程中,客戶要求我們把原有數(shù)據(jù)導(dǎo)入到新搭建的網(wǎng)站系統(tǒng)中,原數(shù)據(jù)存儲(chǔ)在Access數(shù)據(jù)庫(kù)中,而新網(wǎng)站的所有數(shù)據(jù)存儲(chǔ)于oracle中。
實(shí)現(xiàn)步驟:
一、在oracle中建立表T_HZOA_CM_TEMP,以便從Access中導(dǎo)入數(shù)據(jù)
在oracle中創(chuàng)建表就不再贅述了,相信各位大蝦操作已經(jīng)爐火純青了。
二、創(chuàng)建序列和觸發(fā)器,目的是為了在往該表中插入數(shù)據(jù)時(shí)創(chuàng)建ID列,該列值自動(dòng)加一
創(chuàng)建序列代碼:
CREATE SEQUENCE T_SEQ INCREMENT BY 1
START WITH 1
NOMAXVALUE
NOCYCLE
CACHE 10;
創(chuàng)建觸發(fā)器代碼:
CREATE TRIGGER T_TRI
BEFORE INSERT ON T_HZOA_CM_TEMP
FOR EACH ROW BEGIN
SELECT T_SEQ.NEXTVAL
INTO :NEW.id FROM DUAL;END T_TRI;
三、建立Oracle數(shù)據(jù)庫(kù)的ODBC數(shù)據(jù)源
為將要導(dǎo)入數(shù)據(jù)的oracle數(shù)據(jù)庫(kù)創(chuàng)建ODBC數(shù)據(jù)源
四、在本地Access數(shù)據(jù)庫(kù)中創(chuàng)建Oracle數(shù)據(jù)表T_HZOA_CM_TEMP的鏈接表
1、點(diǎn)擊“新建”創(chuàng)建Access表
2、在新建表中選中“鏈接表”,點(diǎn)擊“確定”
3、在接下來(lái)的文件類(lèi)型中選擇“ODBC databases”
4、接下來(lái),選中自己所建的數(shù)據(jù)源,輸入密碼即可
5、接下來(lái),選中自己需要導(dǎo)入的表就可以
6、至此,鏈接表建立完畢,接下來(lái)可以建立查詢進(jìn)行數(shù)據(jù)導(dǎo)入了^_^
五、在本地Access數(shù)據(jù)庫(kù)創(chuàng)建查詢
1、新建查詢,注意雙擊“在設(shè)計(jì)視圖中創(chuàng)建查詢”
2、選中鏈接表和將要導(dǎo)出數(shù)據(jù)的表
3、關(guān)閉選擇表窗口,點(diǎn)擊鼠標(biāo)右鍵,選擇“SQL視圖”,輸入相關(guān)sql語(yǔ)句,跟操作Access本身兩張表沒(méi)有區(qū)別,輸入完畢后保存相關(guān)查詢。
六、雙擊擊相關(guān)查詢進(jìn)行數(shù)據(jù)導(dǎo)入
第二篇:ACCESS實(shí)習(xí)心得
Access實(shí)習(xí)心得
Microsoft Office Access是由微軟發(fā)布的關(guān)聯(lián)式數(shù)據(jù)庫(kù)管理系統(tǒng)。它結(jié)合了 Microsoft Jet Database Engine 和 圖形用戶界面兩項(xiàng)特點(diǎn),是一種關(guān)系數(shù)據(jù)庫(kù)工具。它在很多地方得到廣泛使用,例如小型企業(yè),大公司的部門(mén),和喜愛(ài)編程的開(kāi)發(fā)人員專(zhuān)門(mén)利用它來(lái)制作處理數(shù)據(jù)的桌面系統(tǒng)。它也常被用來(lái)開(kāi)發(fā)簡(jiǎn)單的WEB應(yīng)用程序.
通過(guò)這次將近一個(gè)星期的課程設(shè)計(jì)實(shí)訓(xùn),我對(duì)數(shù)據(jù)庫(kù)在生活中的廣泛應(yīng)用有了更深的體會(huì),同時(shí)也加深了對(duì)數(shù)據(jù)庫(kù)ACCESS2003的認(rèn)識(shí),了解了相關(guān)的ACCESS的知識(shí),尤其是對(duì)數(shù)據(jù)庫(kù)的原理與開(kāi)發(fā)程序的應(yīng)用有了更進(jìn)一步的認(rèn)識(shí)和了解。我了解到了,數(shù)據(jù)庫(kù)原理與應(yīng)用技術(shù)是一門(mén)應(yīng)用性很強(qiáng)的學(xué)科,在學(xué)習(xí)時(shí)必須使理論與實(shí)際相結(jié)合。通過(guò)這次的課程設(shè)計(jì)我經(jīng)過(guò)了一次綜合訓(xùn)練,更加全面地掌握和應(yīng)用了所學(xué)的知識(shí)。
在此,我總結(jié)一下學(xué)習(xí)Access的方法,主要有以下幾點(diǎn):
1學(xué)習(xí)計(jì)劃要明確,根據(jù)自己的實(shí)際出發(fā)。
2從應(yīng)用出發(fā)。學(xué)習(xí)的目的就是為了使用,應(yīng)把學(xué)到的每一點(diǎn)應(yīng)用于實(shí)際操作。
3要多了解相關(guān)信息,多思考,多提問(wèn)題,多問(wèn)幾個(gè)為什么,要學(xué)以致用。
4利用老師的指導(dǎo)、同學(xué)的幫助。
總之,本次實(shí)習(xí)讓我收獲不少,不僅僅是技術(shù)和知識(shí),而且在認(rèn)識(shí)觀念上有了新的提高。我們一定要學(xué)習(xí)好基礎(chǔ)知識(shí),才能有更好的發(fā)揮!
系別:建筑工程管理系
專(zhuān)業(yè):工程管理專(zhuān)業(yè)
班級(jí):0514093班
學(xué)號(hào):051409331
姓名:李威戈
第三篇:oracle培訓(xùn)心得
Oracle培訓(xùn)心得
2010年x月x日至x月x日,我有幸參加了工業(yè)和信息化部軟件與集成電路促進(jìn)中心主辦的“ORACLE數(shù)據(jù)庫(kù)高級(jí)實(shí)戰(zhàn)培訓(xùn)班”學(xué)習(xí)交流。首先感謝學(xué)校領(lǐng)導(dǎo)給予了我這次學(xué)習(xí)機(jī)會(huì)。通過(guò)短暫的幾天培訓(xùn),我不僅對(duì)Oracle知識(shí)有了部分的了解,也接受了很多最新的信息。
在這次培訓(xùn)中,上課的老師有非常豐富DBA經(jīng)驗(yàn),他結(jié)合他自身的DBA工作經(jīng)歷,從Oracle體系結(jié)構(gòu)與網(wǎng)絡(luò)配置、訪問(wèn)控制、事務(wù)處理與日志、閃回特性、數(shù)據(jù)庫(kù)的備份與恢復(fù)和數(shù)據(jù)庫(kù)性能監(jiān)測(cè)與調(diào)整優(yōu)化等幾個(gè)方面對(duì)Oracle進(jìn)行了講解。對(duì)課程講解十分的詳細(xì)。通過(guò)案例示范以及演示,指導(dǎo)我們一步步操作。
Oracle主要以操作命令行為主,在學(xué)習(xí)的過(guò)程中,對(duì)老師的每一步操作都做好了記錄。課堂上按照老師的要求一步步操作,課后按記錄的操作步驟和命令反復(fù)多次的練習(xí)。以此到達(dá)了對(duì)Oracle反復(fù)學(xué)習(xí),熟悉掌握老師所傳授的知識(shí)。
短短5天的高強(qiáng)度集中學(xué)習(xí),我通過(guò)“xxxx”考試,取得了“xxxx”的認(rèn)證。但是我知道依靠這幾天的培訓(xùn)對(duì)Oracle學(xué)習(xí)是不行的,還必須在實(shí)踐中不斷地努力,提升自身的專(zhuān)業(yè)技術(shù)能力。只有在不斷的實(shí)踐練習(xí),才能夠深刻了解它的原理和方法。在以后的工作中,我仍會(huì)繼續(xù)學(xué)習(xí)各種關(guān)于Oracle數(shù)據(jù)庫(kù)的知識(shí)、持之以恒,在今后的工作中不斷實(shí)踐、總結(jié)、深入學(xué)習(xí),全面掌握Oracle知識(shí)。
第四篇:Oracle數(shù)據(jù)庫(kù)導(dǎo)入導(dǎo)出命令總結(jié)
執(zhí)行環(huán)境:可以在SQLPLUS.EXE或者DOS(命令行)中執(zhí)行,DOS中可以執(zhí)行時(shí)由于 在oracle中,安裝目錄ora9iBIN被設(shè)置為全局路徑,該目錄下有EXP.EXE與IMP.EXE文件被用來(lái)執(zhí)行導(dǎo)入導(dǎo)出。
oracle用java編寫(xiě),SQLPLUS.EXE、EXP.EXE、IMP.EXE這兩個(gè)文件是被包裝后的類(lèi)文件。
SQLPLUS.EXE調(diào)用EXP.EXE、IMP.EXE所包裹的類(lèi),完成導(dǎo)入導(dǎo)出功能。
下面介紹的是導(dǎo)入導(dǎo)出的實(shí)例。數(shù)據(jù)導(dǎo)出:
將數(shù)據(jù)庫(kù)zxcc完全導(dǎo)出,用戶名kf 密碼zx 導(dǎo)出到D:zxcc.dmp中
exp kf/zx@zxcc file=d:zxcc.dmp full=y
full=y 表示全庫(kù)導(dǎo)出。full總共有2個(gè)可選項(xiàng)yes(y)/no(n),缺省情況下full=no,這時(shí)只會(huì)將該用戶下的對(duì)象導(dǎo)出。
將數(shù)據(jù)庫(kù)zxcc中kf用戶與cc用戶的表導(dǎo)出
exp kf/zx@zxcc file=d:zxcc_ur.dmp owner=(kf,cc)
full方式可以備份所有用戶的數(shù)據(jù)庫(kù)對(duì)象,包括表空間、用戶信息等,owner=XX只能備份指定用戶的對(duì)象,其他用戶下的就不備份了,EXP中full=y和owner=XX是不能同時(shí)使用的。
將數(shù)據(jù)庫(kù)zxcc中的表kf_operator、kf_role導(dǎo)出
exp kf/zx@zxcc file= d:zxcc_tb.dmp tables=(kf_operator,kf_role)
tables=xx 表示備份相關(guān)表,不能同時(shí)和owner、full使用。
將數(shù)據(jù)庫(kù)中的表kf_operator中的字段oper_id以“00”打頭的數(shù)據(jù)導(dǎo)出
exp kf/zx@zxcc file=d:zxcc_t.dmp tables=(kf_operator)query=“ where oper_id like '00%'”
query主要是導(dǎo)出合適條件的數(shù)據(jù)。使用該參數(shù)時(shí),需要注意對(duì)所有操作系統(tǒng)保留字符都要使用轉(zhuǎn)義符號(hào)。若有括號(hào)()也需要轉(zhuǎn)義:
query=“where dt=to_date('2007-09-22','yyyy-mm-dd')”。
如果遇到條件比較繁瑣的語(yǔ)句,頻繁的轉(zhuǎn)義操作不僅費(fèi)時(shí),還很容易出錯(cuò)。我們可以使用exp或expdp的PARFILE參數(shù)避免query內(nèi)容的繁瑣轉(zhuǎn)義問(wèn)題。
例:
oracle DBALNP01 > cat > zxcc.par
tables=kf_operator
file=zxcc.dmp
query=“where dt_time=to_date('2010-06-25','yyyy-mm-dd')”
這時(shí)就可以盡情的再雙引號(hào)中寫(xiě)條件語(yǔ)句了。
上面是常用的導(dǎo)出,對(duì)于壓縮,可用winzip把dmp文件可以很好的壓縮。
也可以在上面命令后面 加上 compress=y 來(lái)實(shí)現(xiàn)。
數(shù)據(jù)的導(dǎo)入
將D:zxcc.dmp 中的數(shù)據(jù)導(dǎo)入 zxcc數(shù)據(jù)庫(kù)中。
imp kf/zx@zxcc file=d:zxcc.dmp
導(dǎo)數(shù)據(jù)得時(shí)候,有可能報(bào)錯(cuò)。為什么?有以下主要的原因:
A.導(dǎo)入的對(duì)象(表,視圖,方法等)原本不屬于當(dāng)前連接的用戶的
B.導(dǎo)入的對(duì)象在該數(shù)據(jù)庫(kù)的指定用戶下已經(jīng)存在
C.導(dǎo)入的對(duì)象的原本用戶不再這個(gè)數(shù)據(jù)庫(kù)里
對(duì)于這三個(gè)問(wèn)題的處理方法如下:
a/c、所有對(duì)象全部導(dǎo)入到指定的賬戶下:
imp kf_new/zx@zxcc_new file=d:zxcc.dmp fromuser=kf touser=kf_new
其中fromuser=kf為.dmp文件里的對(duì)象的原先的owner, touser=kf_new 為作為導(dǎo)入的對(duì)象的新的Owner.b、忽略/插入數(shù)據(jù):
Imp system/123456@ATSTestDB file=c:export.dmp ignore=y
其中ignore=y告訴imp.exe把數(shù)據(jù)直接插入到相應(yīng)對(duì)象(并且如果導(dǎo)入的對(duì)象里面有其他的對(duì)象,如約束,索引等,會(huì)在數(shù)據(jù)插入后被創(chuàng)建)。
將d:zxcc_tb.dmp中的表tb_operator 導(dǎo)入
imp kf/zx@zxcc file=d:zxcc_tb.dmp tables=(tb_operator)
忽略加載約束
有時(shí)候?qū)?shù)據(jù)進(jìn)來(lái)的時(shí)候,我們不需要把它的約束,比如一些外鍵約束等都導(dǎo)進(jìn)來(lái),可以加上參數(shù)constraints=N
不加載索引(比如唯一性的索引),可以加上參數(shù)indexs=N
只加載結(jié)構(gòu),不加載數(shù)據(jù),如果只要表的結(jié)構(gòu)等定義(約束,觸發(fā)器),那么不要里面的數(shù)據(jù),可以加上參數(shù)rows=N
對(duì)于上述操作登陸操作的對(duì)象system是管理員,如果不是管理員,而是普通用戶,那么這個(gè)用戶必須有創(chuàng)建刪除對(duì)象的權(quán)利,對(duì)象可能包括 表,視圖,方法,存儲(chǔ)過(guò)程等等常見(jiàn)的對(duì)象。為什么“可能”包括?因?yàn)檫@個(gè)視導(dǎo)入導(dǎo)出的時(shí)候是否涉及相關(guān)類(lèi)型的對(duì)象而定。
Imp kf/zx@zxcc_new file=d:zxcc.dmp fromuser=kf touser=kf_new ignore=y
基本上上面的導(dǎo)入導(dǎo)出夠用了。不少情況要先是將表徹底刪除,然后導(dǎo)入。
注意:
操作者要有足夠的權(quán)限,權(quán)限不夠它會(huì)提示。
數(shù)據(jù)庫(kù)鏈接正常,可以用tnsping zxcc 來(lái)獲得數(shù)據(jù)庫(kù)zxcc能否連上。
導(dǎo)入/導(dǎo)出數(shù)據(jù)庫(kù)時(shí)注意字符集??赡軙?huì)出現(xiàn)導(dǎo)出/導(dǎo)入時(shí)數(shù)據(jù)庫(kù)字符集不一致而報(bào)錯(cuò)。
oracle數(shù)據(jù)庫(kù)其他常用命令:
1、給用戶增加導(dǎo)入數(shù)據(jù)權(quán)限的操作
第一,啟動(dòng)sql*puls
第二,以管理員(DBA)用戶登陸
第三,create user 用戶名 IDENTIFIED BY 密碼(如果已經(jīng)創(chuàng)建過(guò)用戶,這步可以省略)
第四,GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,DBA,CONNECT,RESOURCE,CREATE SESSION TO 用戶名字
第五, 運(yùn)行-cmd-進(jìn)入dmp文件所在的目錄,imp userid=管理員用戶名/密碼 full=y file=*.dmp
或者 imp userid=管理員用戶名/密碼 full=y file=filename.dmp
2、Oracle 不允許直接改變表的擁有者, 利用Export/Import可以達(dá)到這一目的.先建立.par文件,然后,使用時(shí)命令如下:imp parfile=/filepath/import9.par
例 import9.par 內(nèi)容如下:
FROMUSER=user
TOUSER=user_new
(注:把表的擁有者由FROMUSER改為T(mén)OUSER,F(xiàn)ROMUSER和TOUSER的用戶可以不同)
ROWS=Y
INDEXES=Y
GRANTS=Y
CONSTRAINTS=Y
BUFFER=409600
file==/filepath/xxxx.dmp
log==/filepath/import_log.log
學(xué)會(huì)使用oracle相關(guān)命令方法會(huì)給我們的工作帶來(lái)便利,遇到問(wèn)題可以迅速的解決,而不用再baidu出來(lái)的海量信息中區(qū)找解決方法。
希望本文能夠?qū)Υ蠹矣兴鶐椭?/p>
第五篇:Oracle數(shù)據(jù)庫(kù)使用心得
Oracle數(shù)據(jù)庫(kù)使用心得
092909 謝弘毅
經(jīng)過(guò)助教對(duì)oracle和sybase數(shù)據(jù)庫(kù)的講解后,我下載使用和體驗(yàn)了這兩個(gè)數(shù)據(jù)庫(kù),但主要的還是使用了Oracle數(shù)據(jù)庫(kù),經(jīng)過(guò)一段時(shí)間的使用,對(duì)其使用有了一定的心得體會(huì),并且通過(guò)閱讀資料對(duì)其現(xiàn)在的前景狀況有了一定的了解。
【選擇Oracle的原因】
(1)在Gartner/Dataquest報(bào)告中Oracle依然在主流操作系統(tǒng)Unix和Linux, Windows NT/2000/XP上的關(guān)系數(shù)據(jù)庫(kù)市場(chǎng)上占據(jù)絕對(duì)的領(lǐng)先地位,在UNIX上占63%, Windows+Unix上占49.9%。在關(guān)系型數(shù)據(jù)庫(kù)市場(chǎng)(包括AS/400,Mainframe),Oracle以39.8%仍然處于領(lǐng)先地位。
(2)Oracle數(shù)據(jù)庫(kù)依然是Fortune 100公司的首選數(shù)據(jù)庫(kù),其中51%的Fortune 100公司選用Oracle Database作為構(gòu)建企業(yè)的傳統(tǒng)應(yīng)用和電子商務(wù)平臺(tái)。
(3)Oracle數(shù)據(jù)庫(kù)與Sybase數(shù)據(jù)庫(kù)相比,無(wú)論從體系架構(gòu)、并行支持、完整性控制等各方面均有很大的優(yōu)勢(shì)。
【Oracle相比于sybase的優(yōu)勢(shì)】(1)體系結(jié)構(gòu)的比較
Oracle采用多線索多進(jìn)程體系結(jié)構(gòu),直接在內(nèi)核中支持分布式數(shù)據(jù)庫(kù)操作、多線索處理、并行處理以及聯(lián)機(jī)事務(wù)處理等。Sybase采用單進(jìn)程多線索體系結(jié)構(gòu),其核心是SQL Server
(2)多線索多進(jìn)程與單進(jìn)程多線索的比較
Oracle和Sybase都采用多線索。Oracle多服務(wù)器進(jìn)程結(jié)構(gòu),能實(shí)現(xiàn)數(shù)據(jù)庫(kù)事務(wù)的并行處理,提高并發(fā)事務(wù)處理的響應(yīng)速度。并且多服務(wù)器結(jié)構(gòu)具有非常靈活的擴(kuò)充性,當(dāng)硬件平臺(tái)處理能力提高時(shí),服務(wù)器進(jìn)程的個(gè)數(shù)也能隨之增加,數(shù)據(jù)庫(kù)性能也隨之提高。Sybase采用單進(jìn)程多線索方式。當(dāng)并發(fā)用戶數(shù)達(dá)到一定的數(shù)量時(shí),會(huì)引起系統(tǒng)處理性能大大下降,和服務(wù)器進(jìn)程瓶頸及死鎖等現(xiàn)象;同時(shí)系統(tǒng)的可擴(kuò)展余地非常狹窄。
(3)聯(lián)機(jī)事務(wù)處理
Oracle的多線索技術(shù)在相同硬件環(huán)境下,所支持的用戶數(shù)是其他數(shù)據(jù)庫(kù) 系統(tǒng)的5至10倍。
【我對(duì)Oracle一些概念的理解】
(1)ORACLE SERVER
一個(gè)運(yùn)行著的ORACLE數(shù)據(jù)庫(kù)就可以看成是一個(gè)ORACLE SERVER,該SERVER由數(shù)據(jù)庫(kù)(Database)和實(shí)例(Instance)組成,在一般的情況下一個(gè)ORACLE SERVER包含一個(gè)實(shí)例和一個(gè)與之對(duì)應(yīng)的數(shù)據(jù)庫(kù)。
一系列物理文件(數(shù)據(jù)文件,控制文件,聯(lián)機(jī)日志等)的集合或與之對(duì)應(yīng)的邏輯結(jié)構(gòu)(表空間,段等)被稱(chēng)為數(shù)據(jù)庫(kù),簡(jiǎn)單的說(shuō),就是一系列與磁盤(pán)有關(guān)系的物理文件的組成。ORACLE內(nèi)存結(jié)構(gòu)和后臺(tái)進(jìn)程被成為數(shù)據(jù)庫(kù)的實(shí)例,一個(gè)實(shí)例最多只能安裝(Mount)和打開(kāi)(Open)在一個(gè)數(shù)據(jù)庫(kù)上,負(fù)責(zé)數(shù)據(jù)庫(kù)的相應(yīng)操作并與用戶交互。
實(shí)例與數(shù)據(jù)庫(kù)的關(guān)系如下圖所示:
圖一 ORACLE SERVER
(2)ORACLE內(nèi)存結(jié)構(gòu)(Memory structure)Oracle內(nèi)存結(jié)構(gòu)主要可以分共享內(nèi)存區(qū)與非共享內(nèi)存區(qū),共享內(nèi)存區(qū)主要包含SGA(System Global Area),非共享內(nèi)存區(qū)主要由PGA(Program Global Area)組成,可以用如下圖形表示。
圖二 ORACLE MEMOERY STRUCTRUE
(3)后臺(tái)進(jìn)程(Background process)后臺(tái)進(jìn)程是Oracle的程序,用來(lái)管理數(shù)據(jù)庫(kù)的讀寫(xiě),恢復(fù)和監(jiān)視等工作。Server Process主要是通過(guò)他和user process進(jìn)行聯(lián)系和溝通,并由他和user process進(jìn)行數(shù)據(jù)的交換。在Unix機(jī)器上,Oracle后臺(tái)進(jìn)程相對(duì)于操作系統(tǒng)進(jìn)程,也就是說(shuō),一個(gè)Oracle后臺(tái)進(jìn)程將啟動(dòng)一個(gè)操作系統(tǒng)進(jìn)程;在Windows機(jī)器上,Oracle后臺(tái)進(jìn)程相對(duì)于操作系統(tǒng)線程,打開(kāi)任務(wù)管理器,我們只能看到一個(gè)ORACLE.EXE的進(jìn)程,但是通過(guò)另外的工具,就可以看到包含在這里進(jìn)程中的線程。
Oracle系統(tǒng)有5 個(gè)基本進(jìn)程他們是:
? DBWR(數(shù)據(jù)文件寫(xiě)入進(jìn)程):將修改過(guò)的數(shù)據(jù)緩沖區(qū)的數(shù)據(jù)寫(xiě)入對(duì)應(yīng)數(shù)據(jù)文件,維護(hù)系統(tǒng)內(nèi)的空緩沖區(qū)。? LGWR(日志文件寫(xiě)入進(jìn)程):將重做日志緩沖區(qū)的數(shù)據(jù)寫(xiě)入重做日志文件。
? SMON(系統(tǒng)監(jiān)護(hù)進(jìn)程):工作主要包含:清除臨時(shí)空間,在系統(tǒng)啟動(dòng)時(shí),完成系統(tǒng)實(shí)例恢復(fù),聚結(jié)空閑空間,從不可用的文件中恢復(fù)事務(wù)的活動(dòng),OPS中失敗節(jié)點(diǎn)的實(shí)例恢復(fù)等。
? PMON(用戶進(jìn)程監(jiān)護(hù)進(jìn)程):主要用于清除失效的用戶進(jìn)程,釋放用戶進(jìn)程所用的資源。
? CKPT(檢查點(diǎn)進(jìn)程,同步數(shù)據(jù)文件, 日志文件,控制文件):同步數(shù)據(jù)文件,日志文件和控制文件,由于DBWR/LGWR的工作原理,造成了數(shù)據(jù)文件,日志文件,控制文件的不一至,這就需要CKPT進(jìn)程來(lái)同步。CKPT會(huì)更新數(shù)據(jù)文件/控制文件的頭信息。
(4)ORACLE的物理結(jié)構(gòu) 1)數(shù)據(jù)文件
每一個(gè)ORACLE數(shù)據(jù)庫(kù)有一個(gè)或多個(gè)物理的數(shù)據(jù)文件(data file)。一個(gè)數(shù)據(jù)庫(kù)的數(shù)據(jù)文件包含全部數(shù)據(jù)庫(kù)數(shù)據(jù)。邏輯數(shù)據(jù)庫(kù)結(jié)構(gòu)(如表、索引)的數(shù)據(jù)物理地存儲(chǔ)在數(shù)據(jù)庫(kù)的數(shù)據(jù)文件中。數(shù)據(jù)文件有下列特征:
? 一個(gè)數(shù)據(jù)文件僅與一個(gè)數(shù)據(jù)庫(kù)聯(lián)系。? 一旦建立,數(shù)據(jù)文件不能改變大小
? 一個(gè)表空間(數(shù)據(jù)庫(kù)存儲(chǔ)的邏輯單位)由一個(gè)或多個(gè)數(shù)據(jù)文件組成。
數(shù)據(jù)文件中的數(shù)據(jù)在需要時(shí)可以讀取并存儲(chǔ)在ORACLE內(nèi)存儲(chǔ)區(qū)中。例如:用戶要存取數(shù)據(jù)庫(kù)一表的某些數(shù)據(jù),如果請(qǐng)求信息不在數(shù)據(jù)庫(kù)的內(nèi)存存儲(chǔ)區(qū)內(nèi),則從相應(yīng)的數(shù)據(jù)文件中讀取并存儲(chǔ)在內(nèi)存。當(dāng)修改和插入新數(shù)據(jù)時(shí),不必立刻寫(xiě)入數(shù)據(jù)文件。為了減少磁盤(pán)輸出的總數(shù),提高性能,數(shù)據(jù)存儲(chǔ)在內(nèi)存,然后由ORACLE后臺(tái)進(jìn)程DBWR決定如何將其寫(xiě)入到相應(yīng)的數(shù)據(jù)文件。2)日志文件
每一個(gè)數(shù)據(jù)庫(kù)有兩個(gè)或多個(gè)日志文件(redo log file)的組,每一個(gè)日志文件組用于收集數(shù)據(jù)庫(kù)日志。日志的主要功能是記錄對(duì)數(shù)據(jù)所作的修改,所以對(duì)數(shù)據(jù)庫(kù)作的全部修改是記錄在日志中。在出現(xiàn)故障時(shí),如果不能將修改數(shù)據(jù)永久地寫(xiě)入數(shù)據(jù)文件,則可利用日志得到該修改,所以從不會(huì)丟失已有操作成果。
日志文件主要是保護(hù)數(shù)據(jù)庫(kù)以防止故障。為了防止日志文件本身的故障,ORACLE允許鏡象日志(mirrored redo log),以致可在不同磁盤(pán)上維護(hù)兩個(gè)或多個(gè)日志副本。
日志文件中的信息僅在系統(tǒng)故障或介質(zhì)故障恢復(fù)數(shù)據(jù)庫(kù)時(shí)使用,這些故障阻止將數(shù)據(jù)庫(kù)數(shù)據(jù)寫(xiě)入到數(shù)據(jù)庫(kù)的數(shù)據(jù)文件。然而任何丟失的數(shù)據(jù)在下一次數(shù)據(jù)庫(kù)打開(kāi)時(shí),ORACLE自動(dòng)地應(yīng)用日志文件中的信息來(lái)恢復(fù)數(shù)據(jù)庫(kù)數(shù)據(jù)文件。3)控制文件
每一ORACLE數(shù)據(jù)庫(kù)有一個(gè)控制文件(control file),它記錄數(shù)據(jù)庫(kù)的物理結(jié)構(gòu),包含下列信息類(lèi)型:
? 數(shù)據(jù)庫(kù)名;
? 數(shù)據(jù)庫(kù)數(shù)據(jù)文件和日志文件的名字和位置; ? 數(shù)據(jù)庫(kù)建立日期。
? 為了安全起見(jiàn),允許控制文件被鏡象。
每一次ORACLE數(shù)據(jù)庫(kù)的實(shí)例啟動(dòng)時(shí),它的控制文件用于標(biāo)識(shí)數(shù)據(jù)庫(kù)和日志文件,當(dāng)著手?jǐn)?shù)據(jù)庫(kù)操作時(shí)它們必須被打開(kāi)。當(dāng)數(shù)據(jù)庫(kù)的物理組成更改時(shí),ORACLE自動(dòng)更改該數(shù)據(jù)庫(kù)的控制文件。數(shù)據(jù)恢復(fù)時(shí),也要使用控制文件。
【我對(duì)Oracle圖形界面使用心得】
Oracle數(shù)據(jù)庫(kù)是一個(gè)大型系統(tǒng),具有強(qiáng)大的數(shù)據(jù)定義、操縱、組織和存儲(chǔ)和維護(hù)等管理功能,還具有一定的數(shù)據(jù)通信接口功能,且分有圖形操作界面和文本操作界面。聽(tīng)老師說(shuō)學(xué)習(xí)數(shù)據(jù)庫(kù)技術(shù)就是要學(xué)習(xí)其語(yǔ)言,熟悉掌握文本操作能有效提高數(shù)據(jù)庫(kù)技術(shù)。但作為一個(gè)初次與實(shí)體數(shù)據(jù)庫(kù)接觸的學(xué)生,我更喜歡圖形操作界面。在幾次嘗試中我有以下體會(huì): 【優(yōu)點(diǎn)】
(1)圖形界面給人的第一印象就是直觀,相比起純語(yǔ)言的模式,圖形界面能更好的體現(xiàn)你的操作。因?yàn)閷W(xué)習(xí)數(shù)據(jù)庫(kù)以來(lái),老師所講解的都是一些查詢語(yǔ)言,和命令行之類(lèi)的語(yǔ)言的知識(shí)。而通過(guò)直觀的圖形界面,使我數(shù)據(jù)庫(kù)的基本結(jié)構(gòu)(物理存儲(chǔ)結(jié)構(gòu)、邏輯存儲(chǔ)結(jié)構(gòu))有了更為深刻的了解體會(huì),看到了oracle數(shù)據(jù)庫(kù)的一些優(yōu)秀的特性。和一些優(yōu)秀的操作功能。
(2)使用圖形界面能夠更加快捷且準(zhǔn)確的行使數(shù)據(jù)庫(kù)的各種操作。因?yàn)閛racle數(shù)據(jù)庫(kù)支持圖形等操作,使得一些需要用SQL語(yǔ)句或是命令行的操作可以通過(guò)簡(jiǎn)單的拖放點(diǎn)擊圖形即可完成,這一方面減少了錯(cuò)誤的發(fā)生,一方面也簡(jiǎn)化了工作任務(wù)。
(3)圖形操作界面包含了語(yǔ)句操作的所有功能,而且還能通過(guò)教程或是文檔獲得幫助,這使得你能在使用的過(guò)程中克服一些困難。最重要的是,在圖形界面的使用過(guò)程中你可以直觀清晰的看到各種操作產(chǎn)生的結(jié)果,加深你對(duì)數(shù)據(jù)庫(kù)中各種關(guān)系的理解。
【缺點(diǎn)】
(1)使用圖形界面不能做到像語(yǔ)言命令操作的多變性,一部分操作通過(guò)語(yǔ)言能夠簡(jiǎn)單化,例如對(duì)于很多對(duì)象的查詢和修改,就比較適合用語(yǔ)言操作,這體現(xiàn)了圖形界面操作的局限性。
(2)圖形界面所占用系統(tǒng)資源大,不利于多用戶的并行操作。也減低了系統(tǒng)的處理能力。最關(guān)鍵的是圖形界面不容易維護(hù)和修改對(duì)象(3)無(wú)邏輯
圖形操作是一個(gè)非結(jié)構(gòu)化的操作集合,先后順序完全掌握在操作者手中。這種操作過(guò)程很容易出錯(cuò),而文本操作著可以利用語(yǔ)句有效控制。
【總結(jié)】
雖然使用oracle一段時(shí)間,但是要學(xué)的東西實(shí)在是太多了,不僅是數(shù)據(jù)庫(kù)軟件本身,還有SQL語(yǔ)言也是要好好學(xué)的,雖然說(shuō)覺(jué)得圖形界面好,方便,但是如果最基本的語(yǔ)言沒(méi)學(xué)好,還是不能有所作為的。