什麼是資料庫?
資料庫就是處理資料檔案的一批程式。
oracle資料庫中存放有兩種型別的資訊:
. 使用者資料是特定應用程式的資料(例如客戶發貨單)。
. 系統資料是資料庫系統管理自身所需的資料(例如與特定資料庫有關的所有資料檔案的名稱及存放地點)。
資料庫就是櫃子,櫃中的抽屜是表空間,抽屜中的資料夾是資料檔案,資料夾中的紙是表,寫在紙上的資訊就是資料。
1) 表空間是乙個或多個資料檔案的集合。
2) 下列表空間在大多數資料庫中是必備的或者是常見的:
. 系統表空間中儲存用於管理oracle系統自身及其中存放的資料所需的資訊。這些表空間的名稱是固定的。
. 臨時表空間是oracle中臨時使用的區域。當特定事件發生時, oracle需要用這些磁碟空
間管理有關的事務。
. 工具表空間儲存那些oracle資料庫上執行的工具軟體所需的物件。
. 使用者表空間中存放使用者專用的資料庫物件。
. 回滾表空間中存放資料庫物件的回滾段。
. 資料和索引表空間中存放使用者的應用資料。
. 索引是資料庫物件的乙個特殊型別。oracle使用索引進行快速資料檢索。
3) 全表掃瞄(full table scan)指oracle訪問特定物件的每行資料。
4) 恢復(undo)資訊儲存在乙個稱作回滾段(rollback segment)的專用資料庫物件中,在出現失敗或臨時中止事務時,可以用回滾段使資料庫物件退回到舊值。
重做日誌(redo log)也稱作事務日誌(transaction log),oracle在這些特殊的作業系統檔案中記錄針對資料庫進行的修改操作或事務。對資料庫所做的所有修改工作都在記憶體中進行.
1) oracle資料庫由兩種型別的檔案組成:
. 結合在一起構成表空間的資料檔案。
. 結合在一起構成重做日誌系列的資料檔案。
2) 乙個資料庫必須至少具有兩個重做日誌。
3) 重做日誌中含有資料庫中發生的所有事務條目。
4) 重做日誌常常也稱為事務日誌。
5) 為了防止資料丟失,必須使用事務日誌,事務日誌的功能為:出現意外故障時恢復資料。
6) oracle資料庫可以在下列兩種模式下執行:
. archivelog模式下將儲存所有的事務日誌。
. noarchivelog模式下不儲存舊事務日誌。
髒資料塊(dirty data block) 是計算機記憶體中的一塊記憶體區,其中存有讀自資料庫並已做修改的資料。
髒資料塊:存放在記憶體中髒資料塊中的原始資料已被修改,而修改後的資料還未寫入資料庫中。
熱資料塊(hot data block) 存放著那些要頻繁修改的資料。
l r u (least recently used,最近最少使用)
快照(snapshot) 是乙個存放在乙個或多個表中的資料的唯讀拷貝,從乙個站點(主站點)存入另乙個站點(遠端站點)。
回滾(rollback)的功能是將使用者改變的資料恢復到原先所處的狀態。
恢復資訊(undo information) 由於種種原因,當資料庫需要恢復或回滾使用者的操作時,將產生恢復資訊。
控制檔案是乙個非常小的檔案,其中存放一些與oracle資料庫所有檔案相關的關鍵資訊。
oracle系統通過控制檔案保持資料庫的完整性(integrity)以及決定恢復資料時使用哪些重做日誌。
. 每個資料庫至少有兩個控制檔案。我們極力建議使用者最少生成兩個控制檔案,並分別放在不同的磁碟上。
. 資料庫結構的所有修改都被記錄在控制檔案中。
有兩種型別的程式或程序。
. 一種是使用者(或稱作客戶機)程序,如s q l * p l u s、oracle forms、oracle reports及其他任
何用於訪問資料庫的工具都是使用者程序。
. 伺服器程序接收來自客戶程序的請求,然後通過與資料庫的互動滿足這些要求。
oracle提供了許多支援程序幫助使用者程序與資料庫伺服器通訊。這些支援程序用於:
. 在出現校驗點時將資料寫回資料檔案中( d b w r )。
. 在出現校驗點時確保將髒資料塊寫回磁碟( c k p t )。
. 讀寫重做日誌( l g w r )。
. 在啟動系統時執行以完成資料庫恢復的功能( s m o n )。
. 使用者在會話期間異常終止後,可用來釋放使用者占用的資源( p m o n )。
. 在a r c h i v e l o g模式下,出現重做日誌交換時歸檔重做日誌的拷貝( a r c h )。
. 在並行伺服器配置中管理鎖( l c k )。
. 當使用oracle分布式選件時恢復可疑的事務( r e c o )。
. 支援oracle 的快照技術( s n p )。
. 支援oracle的高階佇列( q m n )。
關於記憶體結構總結如下:
1) 記憶體區有兩種:
. 系統全域性區( s g a )。
. 程式全域性區( p g a )。
2) sga由所有的伺服器和客戶機程序共享。
3) sga主要由四部分組成:
. 資料高速緩衝區(data buffer cache)。
. 字典高速緩衝區(rows cache)中存放o r a c l e管理自身所需資訊。
. 重做日誌緩衝區為事務高速緩衝區。
. 共享s q l池為程式高速緩衝區。
4) 使用者程序需要檢視的資訊必須首先放到s g a中。
5) sga是乙個大通訊器,所有程序都可以通過它共享資訊。
6) pga不能在程序間共享。
7) pga中存放資料和程序控制資訊。
SQL Server Index系列之一
agenda index structures primary key and clustered index constraints and indexes syntax for creating and managing indexes special indexes index access ...
Active Directory系列之一
為什麼需要域?對很多剛開始鑽研微軟技術的朋友來說,域是乙個讓他們感到很頭疼的物件。域的重要性毋庸置疑,微軟的重量級服務產品基本上都需要域的支援,很多公司招聘工程師的要求中也都明確要求應聘者熟悉或精通active directory。但域對初學者來說顯得複雜了一些,眾多的技術術語,例如active d...
linux命令系列之一
du wzwz h 檢視目錄或者檔案wzwz占用空間的大小 ls 1 每行顯示乙個 ls more 分頁顯示 ls a 全部顯示包括隱藏檔案和目錄 ls l 顯示每一項的詳細資訊 groupdel 刪除組 userdel 刪除使用者 top 顯示系統程序 df h 檢視磁碟各分割槽的使用情況 df ...