astingracle執(zhí)行sql語句過程
1.parse(解析)
軟解析/硬解析(第一次執(zhí)行sql需要進行硬解析)
1)從共享池的庫緩沖區(qū)搜索,確定該語句是否曾經(jīng)執(zhí)行過,凡是執(zhí)行過的sql語句,oracle會使用hash函數(shù)進行計算,產(chǎn)生一個很小的文本記錄。如果是第一次執(zhí)行,則進入第二步;
2)檢查語法、權(quán)限等等(權(quán)限的信息是存放在oracle的數(shù)據(jù)字典中),oracle先從共享池的數(shù)據(jù)字典緩沖區(qū)中搜索,如果沒有找到,再從數(shù)據(jù)文件(system表空間的數(shù)據(jù)文件)中讀取,然后存放在共享池的數(shù)據(jù)字典緩沖區(qū)中,以便共享;
3)分析過程中,對訪問到的表進行鎖操作,目的是為了保護表的結(jié)構(gòu)不被修改;
4)oracle優(yōu)化器會根據(jù)數(shù)據(jù)的存儲結(jié)構(gòu)(表的存儲結(jié)構(gòu)、索引)統(tǒng)計信息等。計算各種讀取的代價,選擇一條最佳路徑(代價最低),生成執(zhí)行計劃,同時編譯并存儲在共享池的庫緩沖區(qū)中,以便共享。
2.bind(綁定變量)
3.execute(執(zhí)行)
先從數(shù)據(jù)緩沖區(qū)查找數(shù)據(jù),如果沒有,再從數(shù)據(jù)文件中讀取數(shù)據(jù)到數(shù)據(jù)緩沖區(qū)、保持,以便共享。
4.fetch
把結(jié)果返回給用戶。
posted @
2012-09-27 21:39 kxbin 閱讀(667) |
評論 (1) |
編輯 收藏
1、學習Linux的基本要求: 1). 掌握至少50個以上的常用命令。 2). 熟悉Gnome/KDE等X-windows桌面環(huán)境操作 。 3). 掌握.tgz、.rpm等軟件包的常用安裝方法 4). 學習添加外設,安裝設備驅(qū)動程序(比如網(wǎng)卡) 5). 熟悉Grub/Lilo引導器及簡單的修復操作 。 6). 熟悉Linux文件系統(tǒng) 和目錄結(jié)構(gòu)。 7). 掌握vi,gcc,gdb等常用編輯器,編譯器,調(diào)試器 。 8). 理解shell別名、管道、I/O重定向、輸入和輸出以及shell腳本編程。 2、Linux服務器領(lǐng)域:----代理服務器,使用的是Linux的iptables功能;----電影服務器,使用的是Linux的samba服務的功能,文件和打印共享服務器----客戶存檔服務器,采用的Linux的ftp服務器,常用的有:wu-ftp,pro-ftp軟件建立的----www服務器,使用的是Linux下的apache服務器軟件----ftp服務器,下載服務器,使用的是Linux下的wu-ftp,pro-ftp,vs-ftp軟件----mail服務器,采用的是Linux下的sendmail,qmail軟件----dns服務器,使用的是Linux下的bind軟件----數(shù)據(jù)庫服務器,使用的是mysql或者oracle軟件----防火墻,軟件防火墻服務器,使用的是Linux的iptables功能建立的----路由器,軟路由器,使用的是Linux下的routed軟件建立的----撥號服務器,vpn服務器等等3、Linux學習三步走: 第一,網(wǎng)絡服務器階段; 第二,應用軟件的開發(fā); 第三,內(nèi)核研究與操作系統(tǒng)的開發(fā)階段。
posted @
2012-07-19 09:36 kxbin 閱讀(1418) |
評論 (2) |
編輯 收藏