《常见的库管理系统.ppt》由会员分享,可在线阅读,更多相关《常见的库管理系统.ppt(32页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、常见的资料库管理系统 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望 簡簡 介介Oracle SQL ServerAccessMySQLOracle OracleDatabaseServerProcessUserProcess使用者想要在Oracle Server上查詢一筆人事資料由Server Process負責向Oracle Server溝通,並將符合使用者所需的資料,從Oracle Server送至User Process,以完成該使用者下達的request
2、此時系統會產生相對應的User Process與Server Process 結構結構User ProcessServer ProcessInstanceDatabasebuffercacheSGALibrary cacheShared PoolRedo Logbuffer cacheData Dict.cachePMON SMONDBWRLGWRCKPTOthersData filesControl filesRedo Log filesParameterfilePasswordfileArchivedlog filesPGADatabase SGA每當Oracle 資料庫被啟動之前,系統都
3、會先在記憶體內配置好一塊空間,用以存放Oracle 系統運作時所需的資訊或紀錄每個使用者所需要處理的資料這塊記憶體空間稱之為總系統全域(System Global Area,SGA)資料快取緩衝區(Database Buffer Cache)用來存放使用者曾經處理過的資料其用途在於減少存取資料時造成的磁碟讀寫動作,進而提昇資料存取之效能重置日誌緩衝區(Redo Log Buffer Cache)紀錄Oracle 資料庫內所有資料異動的情況Oracle server 也會在適當時機將Log Buffer 內的紀錄寫入磁碟內的檔案,以便資料庫系統毀損時可進行必要的復原(Recovery)動作共享資
4、料區(Shared Pool)資料字典緩衝區(Dictionary cache)函式快取緩衝區(Library cache)說明當使用者將SQL 指令送至Oracle 資料庫後,系統將會先解析(parse)語法是否正確,而解析時所需要的系統資訊(例如使用者的權限或是表格的欄位名稱等)以及解析後的結果(parse tree 與execution plan)就會放置在Shared pool 內如此一來,如果不同的使用者執行了相同的SQL 指令就可以共享已解析好的parse tree 與execution plan,可加速SQL 指令的執行速度Oracle Database Files資料檔(Dat
5、a files)存放資料庫內所有資料資料庫中的table、index 等資料庫物件之資料實際上都是存放於data file 之中交易日誌檔(Redo log files)當任何資料被異動時,記憶體內的重置紀錄緩衝區會保留所有的異動紀錄由LGWR背景處理程序負責寫入至硬碟內的redo log files 存放一般會有兩個以上控制檔(Control files)在Oracle 資料庫系統運作時,Control file 內會記錄以下重要的資訊:Oracle 資料庫名稱與建立時間Data files 與Redo log files 之名稱以及所在位置交易紀錄序列碼(log sequence numb
6、er)密碼檔(Password files)主要作管理資料庫的安全機制Oracle的認證方式OS層級的認證方式透過Password file的機制參數檔(Parameter files)做為配置記憶體空間(SGA)與Background processes時的設定值 備份登錄檔(Archived log files)ARCHIVELOG:Redo log file在被重覆使用之前,會先存放至Archived log filesNOARCHIVELOG:Redo log file不會有任何Archive的額外動作 SQL Server單機管理主從式管理分散式管理 SQL 語法依用途不同可分為三類
7、:DDL(資料定義語言)敘述:create,alter,dropDCL(資料控制語言)敘述:grant,deny,revokeDML(資料處理語言)敘述:insert,delete,update,select新增資料型別新增資料型別 VARCHAR(MAX)、NVARCHAR(MAX)、VARBINARY(MAX)等資料型別,用以存放大型資料(text、ntext 及 image)結構描述結構描述(SCHEMA)(SCHEMA)伺服器名稱.資料庫名稱.結構描述.物件名稱。用途類似資料夾 快照集快照集(Snapshot)(Snapshot)保留資料庫在某一時間點的唯讀檢視。可以節省空間、時間並減
8、少系統負荷。提供高可用性的資料庫鏡像功能提供高可用性的資料庫鏡像功能 自動且即時地將主要伺服器的資料同步到次要伺 服器,資料表和索引資料分割資料表和索引資料分割 資料表和索引資料分割藉由使用較小、較資料表和索引資料分割藉由使用較小、較可管理的區塊來促進資料庫的管理,以減輕可管理的區塊來促進資料庫的管理,以減輕大型資料庫的管理。水平資料分割可根據資大型資料庫的管理。水平資料分割可根據資料分割配置,使資料表分割為較小的群組。料分割配置,使資料表分割為較小的群組。資料表分割是針對從數百資料表分割是針對從數百 GB 到到 TB 或更大或更大的非常大型資料庫而設計。的非常大型資料庫而設計。複寫複寫 複寫
9、的設計可將資料散發至多個資料庫伺複寫的設計可將資料散發至多個資料庫伺服器,以增加資料可用性。使應用程式能將服器,以增加資料可用性。使應用程式能將 SQL Server 的讀取工作負載分攤至各資料的讀取工作負載分攤至各資料庫,藉此提升了可用性。該模型提供了新的庫,藉此提升了可用性。該模型提供了新的拓樸,在其中資料庫可與任何相同的對等資拓樸,在其中資料庫可與任何相同的對等資料庫進行交易同步處理。料庫進行交易同步處理。管理工具管理工具-服務管理員服務管理員管理工具管理工具-Enterprise Manager管理工具管理工具-Query Analyzer AccessAccess為微軟公司因應辦公室
10、環境而發展出的資料庫管理軟體。提供資料管理的功能,如資料的建立、查詢、報表的製作等。資料庫資料庫是紀錄的集合,為一個有系統、有組織的資料集合體。Access資料庫七大物件:資料庫七大物件:資料表、查詢、表單、報表、資料頁、巨集、模組。建立資料表建立資料表在資料庫內建立四個資料表:學生通訊錄、國文成績、英文成績、數學成績。方法方法1:輸入資料:輸入資料設計欄位結構。設計欄位結構。步驟 1:資料表新增資料工作表。步驟 2:資料輸入完畢,關閉是命名確定設主索引否。步驟 3:選擇資料表設計,將欄位名稱逐一修改後,關閉是(儲存設計的改變)。步驟 4:再次開啟資料表,觀看修改結果。三、三、建立資料表建立資
11、料表(續續)方法方法2 2:設計欄位結構:設計欄位結構輸入資料輸入資料。步驟 1:資料表新增設計檢視確定。步驟 2:輸入定義好的資料型態。步驟 3:儲存資料表,並設定主索引是(自動設定 識別碼 為主索引)。步驟 4:開啟資料表。步驟 5:開始輸入資料內容。步驟 6:資料輸入完畢,關閉。與與SQL Server完全的整合完全的整合使用內建的UpSizing精靈功能,在沒有程式化的需求下,即可輕鬆容易地轉換Access的檔案為完整的SQL資料庫。便可以利用SQL的技術,來建立企業等級的資料庫。透過這樣的方式,藉由一個資料庫規模來調節適應您在企業需求上的改變,您的系統便可以隨著企業的擴展而擴充。利用
12、利用Access來管理來管理SQL Sever資料庫資料庫利用Access設計檢視(Access Data View)並藉由Server-Side資料表、程序及圖示來正確地工作。從Access的內部,便可以執行一般的SQL Server管理工具,諸如,重製、備份、回存與安全控管等。MySQLMySQL是一種RDBMS(關聯式資料庫系統)資料庫可以儲存大量資料,而利用Sql語 法操作資料庫,查詢排序等等.SQL(結構化查詢語言),用來新增、維 護、存取關連式資料庫的標準語言(IBM 發展出來的)。資料庫資料表欄位資料SQL語法SQL語法 SHOW DATABASES LIKE pattern;列
13、出所有資料庫名稱。SHOW TABLES FROM db_name LIKE pattern;列出資料庫裡所有資料表名稱。DESCRIBE table_name;列出資料表的欄位設定。SQL語法 CREATE DATABASE db_name;建立新的資料庫 DROP DATABASE db_name;刪除資料庫 USE db_name 選擇使用的資料庫USE是MySQL的命令,所以不必加上分號。SQL語法 CREATE TABLE table_name(column_name column_type NOT NULL,column_name column_type NOT NULL,);建立
14、新的資料表 DROP TABLE table_name;刪除資料表SQL語法 INSERT INTO table_name(column name)VALUES(value);SELECT*FROM table_name WHERE expr;DELETE FROM table_name WHERE expr;UPDATE table_name SET column name=value WHERE expr;建立新的資料庫為資料庫建立一組管理帳號密碼為資料庫建立一組管理帳號密碼在文字區域內輸入grant all on 資料庫名稱.*to 帳號localhost identified by 密碼;其中localhost代表的是MySQL hostname(預設值)。也可以將localhost改為正確的位址。建立新的資料表建立新的資料表(table)將現存資料備份成成文字檔(.sql)