1 / 32

常見的資料庫管理系統

常見的資料庫管理系統. 91156113 黃耀緯 91156116 黃富彥 91156138 林行禹 91156149 林紹彥. 簡 介. Oracle SQL Server Access MySQL. Oracle. 由 Server Process 負責向 Oracle Server 溝通,並將符合使用者所需的資料,從 Oracle Server 送至 User Process ,以完成該使用者下達的 request. 使用者想要在 Oracle Server 上查詢一筆人事資料. Server Process. User Process.

bambi
Download Presentation

常見的資料庫管理系統

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 常見的資料庫管理系統 91156113 黃耀緯 91156116 黃富彥 91156138 林行禹 91156149 林紹彥

  2. 簡 介 • Oracle • SQL Server • Access • MySQL

  3. Oracle 由Server Process負責向Oracle Server溝通,並將符合使用者所需的資料,從Oracle Server送至User Process,以完成該使用者下達的request 使用者想要在Oracle Server上查詢一筆人事資料 Server Process User Process 此時系統會產生相對應的User Process與Server Process Oracle Database

  4. 結構 Instance User Process Shared Pool SGA Library cache Database buffer cache Redo Log buffer cache Server Process Data Dict. cache PGA PMON SMON DBWR LGWR CKPT Others Parameter file Data files Control files Redo Log files Archived log files Password file Database

  5. SGA • 每當Oracle 資料庫被啟動之前,系統都會先在記憶體內配置好一塊空間,用以存放Oracle 系統運作時所需的資訊或紀錄每個使用者所需要處理的資料 • 這塊記憶體空間稱之為總系統全域(System Global Area,SGA)

  6. 資料快取緩衝區(Database Buffer Cache) • 用來存放使用者曾經處理過的資料 • 其用途在於減少存取資料時造成的磁碟讀寫動作,進而提昇資料存取之效能 • 重置日誌緩衝區(Redo Log Buffer Cache) • 紀錄Oracle 資料庫內所有資料異動的情況 • Oracle server 也會在適當時機將Log Buffer 內的紀錄寫入磁碟內的檔案,以便資料庫系統毀損時可進行必要的復原(Recovery)動作

  7. 共享資料區(Shared Pool) • 資料字典緩衝區(Dictionary cache) • 函式快取緩衝區(Library cache) • 說明 • 當使用者將SQL 指令送至Oracle 資料庫後,系統將會先解析(parse)語法是否正確,而解析時所需要的系統資訊(例如使用者的權限或是表格的欄位名稱等) • 以及解析後的結果(parse tree 與execution plan)就會放置在Shared pool 內 • 如此一來,如果不同的使用者執行了相同的SQL 指令就可以共享已解析好的parse tree 與execution plan,可加速SQL 指令的執行速度

  8. OracleDatabase Files • 資料檔(Data files) • 存放資料庫內所有資料 • 資料庫中的table、index 等資料庫物件之資料實際上都是存放於data file 之中 • 交易日誌檔(Redo log files) • 當任何資料被異動時,記憶體內的重置紀錄緩衝區會保留所有的異動紀錄 • 由LGWR背景處理程序負責寫入至硬碟內的redo log files 存放 • 一般會有兩個以上

  9. 控制檔(Control files) • 在Oracle 資料庫系統運作時,Control file 內會記錄以下重要的資訊: • Oracle 資料庫名稱與建立時間 • Data files 與Redo log files 之名稱以及所在位置 • 交易紀錄序列碼(log sequence number) • 密碼檔(Password files) • 主要作管理資料庫的安全機制 • Oracle的認證方式 • OS層級的認證方式 • 透過Password file的機制

  10. 參數檔(Parameter files) • 做為配置記憶體空間(SGA)與Background processes時的設定值 • 備份登錄檔(Archived log files) • ARCHIVELOG:Redo log file在被重覆使用之前,會先存放至Archived log files • NOARCHIVELOG:Redo log file不會有任何Archive的額外動作

  11. SQL Server • 單機管理 • 主從式管理 • 分散式管理

  12. SQL 語法 依用途不同可分為三類: • DDL (資料定義語言) 敘述:create, alter, drop • DCL (資料控制語言) 敘述:grant, deny, revoke • DML (資料處理語言) 敘述:insert, delete, update, select

  13. 新增資料型別 VARCHAR(MAX)、NVARCHAR(MAX)、VARBINARY(MAX)等資料型別,用以存放大型資料(text、ntext 及 image ) • 結構描述 (SCHEMA) 『伺服器名稱.資料庫名稱.結構描述.物件名稱』。用途類似資料夾 • 快照集 (Snapshot) 保留資料庫在某一時間點的唯讀檢視。可以節省空間、時間並減少系統負荷。 • 提供高可用性的資料庫鏡像功能 自動且即時地將主要伺服器的資料同步到次要伺 服器,

  14. 資料表和索引資料分割 資料表和索引資料分割藉由使用較小、較可管理的區塊來促進資料庫的管理,以減輕大型資料庫的管理。水平資料分割可根據資料分割配置,使資料表分割為較小的群組。資料表分割是針對從數百 GB 到 TB 或更大的非常大型資料庫而設計。 • 複寫 複寫的設計可將資料散發至多個資料庫伺服器,以增加資料可用性。使應用程式能將 SQL Server 的讀取工作負載分攤至各資料庫,藉此提升了可用性。該模型提供了新的拓樸,在其中資料庫可與任何相同的對等資料庫進行交易同步處理。

  15. 管理工具-服務管理員

  16. 管理工具- Enterprise Manager

  17. 管理工具- Query Analyzer

  18. Access • Access為微軟公司因應辦公室環境而發展出的資料庫管理軟體。 • 提供資料管理的功能,如資料的建立、查詢、報表的製作等。 • 資料庫是紀錄的集合,為一個有系統、有組織的資料集合體。 • Access資料庫七大物件:資料表 、查詢 、表單 、報表 、資料頁、巨集 、模組。

  19. 建立資料表 • 在資料庫內建立四個資料表:學生通訊錄、國文成績、英文成績、數學成績。 • 方法1:輸入資料設計欄位結構。 • 步驟 1:資料表→新增→資料工作表。 • 步驟 2:資料輸入完畢,關閉→是→命名→確定/設主索引→否 。 • 步驟 3:選擇資料表→設計,將欄位名稱逐一修改後,關閉→是(儲存設計的改變)。 • 步驟 4:再次開啟資料表,觀看修改結果。

  20. 三、 建立資料表(續) • 方法2:設計欄位結構輸入資料。 步驟 1:資料表→新增→設計檢視→確定。 步驟 2:輸入定義好的資料型態。 步驟 3:儲存資料表,並設定主索引→是(自動設定[識別碼] 為主索引)。 步驟 4:開啟資料表。 步驟 5:開始輸入資料內容。 步驟6:資料輸入完畢,關閉。

  21. 與SQL Server完全的整合 • 使用內建的UpSizing精靈功能,在沒有程式化的需求下,即可輕鬆容易地轉換Access的檔案為完整的SQL資料庫。便可以利用SQL的技術,來建立企業等級的資料庫。透過這樣的方式,藉由一個資料庫規模來調節適應您在企業需求上的改變,您的系統便可以隨著企業的擴展而擴充。

  22. 利用Access來管理SQL Sever資料庫 • 利用Access設計檢視(Access Data View) 並藉由Server-Side資料表、程序及圖示來正確地工作。從Access的內部,便可以執行一般的SQL Server管理工具,諸如,重製、備份、回存與安全控管等。

  23. MySQL • MySQL是一種RDBMS(關聯式資料庫系統) • 資料庫可以儲存大量資料,而利用Sql語 • 法操作資料庫,查詢排序等等…. • SQL(結構化查詢語言),用來新增、維 • 護、存取關連式資料庫的標準語言(IBM • 發展出來的)。 • 資料庫資料表欄位資料

  24. SQL語法Ⅰ SQL語法Ⅰ • SHOW DATABASES[LIKE pattern] ; • 列出所有資料庫名稱。 • SHOW TABLESFROM db_name [LIKE pattern] ; • 列出資料庫裡所有資料表名稱。 • DESCRIBEtable_name ; • 列出資料表的欄位設定。

  25. SQL語法Ⅱ ★ CREATE DATABASEdb_name ; 建立新的資料庫 ★ DROP DATABASEdb_name ; 刪除資料庫 ★ USE db_name 選擇使用的資料庫 USE是MySQL的命令,所以不必加上 分號。

  26. SQL語法Ⅲ • CREATE TABLEtable_name ( • column_name column_type [NOT NULL], • column_name column_type [NOT NULL], • … • ); • 建立新的資料表 • DROP TABLEtable_name; • 刪除資料表

  27. SQL語法Ⅳ • INSERT INTOtable_name (column name…) • VALUES( value…) ; • SELECT * FROMtable_name [ WHERE expr ]; • DELETE FROMtable_name [ WHERE expr ]; • UPDATEtable_name SET column name = value • [ WHERE expr ];

  28. 建立新的資料庫

  29. 為資料庫建立一組管理帳號密碼 • 在文字區域內輸入grant all on 資料庫名稱.* to 帳號@localhost identified by '密碼'; 其中localhost代表的是MySQL hostname (預設值)。也可以將localhost改為正確的位址。

  30. 建立新的資料表(table)

  31. 將現存資料備份成成文字檔(.sql)

More Related