- MySQL數(shù)據(jù)庫實(shí)用教程
- 趙明淵 唐明偉主編
- 1222字
- 2025-02-08 17:13:38
1.1.2 數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)和數(shù)據(jù)庫系統(tǒng)
1.?dāng)?shù)據(jù)庫
數(shù)據(jù)庫(database,DB)是按一定的數(shù)據(jù)模型組織、描述和存儲(chǔ)數(shù)據(jù),具有盡可能小的冗余度、較高的數(shù)據(jù)獨(dú)立性和易擴(kuò)張性的可共享數(shù)據(jù)集合,其中的數(shù)據(jù)長期存儲(chǔ)在計(jì)算機(jī)的存儲(chǔ)介質(zhì)中。數(shù)據(jù)庫具有以下特性。
(1)共享性,指數(shù)據(jù)庫中的數(shù)據(jù)能被多個(gè)應(yīng)用程序所對應(yīng)的用戶使用。
(2)獨(dú)立性,指數(shù)據(jù)庫的使用提高了數(shù)據(jù)和程序的獨(dú)立性,數(shù)據(jù)與程序可以分開存儲(chǔ),互不交叉。
(3)完整性,指使用數(shù)據(jù)庫易于保證數(shù)據(jù)的正確性、一致性和有效性。
(4)冗余度低,指使用數(shù)據(jù)庫可以減少數(shù)據(jù)冗余。
2.?dāng)?shù)據(jù)庫管理系統(tǒng)
數(shù)據(jù)庫管理系統(tǒng)(database management system,DBMS)是創(chuàng)建、操作、管理和維護(hù)數(shù)據(jù)庫,并對數(shù)據(jù)進(jìn)行統(tǒng)一管理和控制的系統(tǒng)軟件,它是數(shù)據(jù)庫系統(tǒng)的核心組成部分。
數(shù)據(jù)庫管理系統(tǒng)一般是指由廠家提供的系統(tǒng)軟件,例如甲骨文(Oracle)公司提供的Oracle Database 19c、MySQL 8.0,微軟(Microsoft)公司提供的SQL Server 2019等。
數(shù)據(jù)庫管理系統(tǒng)的主要功能如下。
(1)數(shù)據(jù)定義功能:提供數(shù)據(jù)定義語言來定義數(shù)據(jù)庫和數(shù)據(jù)庫對象。
(2)數(shù)據(jù)操縱功能:提供數(shù)據(jù)操縱語言來對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行插入、修改、刪除等操作。
(3)數(shù)據(jù)查詢功能:提供數(shù)據(jù)查詢語言來對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行查詢等操作。
(4)數(shù)據(jù)控制功能:提供數(shù)據(jù)控制語言來進(jìn)行數(shù)據(jù)控制(保證數(shù)據(jù)的安全性、完整性),以實(shí)現(xiàn)數(shù)據(jù)的并發(fā)控制等功能。
(5)數(shù)據(jù)庫建立維護(hù)功能:包括數(shù)據(jù)庫初始數(shù)據(jù)的裝入、轉(zhuǎn)儲(chǔ)、恢復(fù)等功能,以及系統(tǒng)性能的監(jiān)視、分析等功能。
3.?dāng)?shù)據(jù)庫系統(tǒng)
數(shù)據(jù)庫系統(tǒng)(database system,DBS)由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、應(yīng)用界面、初級用戶、應(yīng)用程序、應(yīng)用程序員、查詢工具、數(shù)據(jù)分析員、管理工具、數(shù)據(jù)庫管理員(database administrator,DBA)等組成,如圖1.1所示。
從數(shù)據(jù)庫系統(tǒng)的應(yīng)用角度看,數(shù)據(jù)庫系統(tǒng)的工作模式分為客戶-服務(wù)器模式和瀏覽器-服務(wù)器模式。
(1)客戶-服務(wù)器模式。在客戶-服務(wù)器模式(client-server model,簡稱C/S)中,將應(yīng)用劃分為前臺(tái)和后臺(tái)兩個(gè)部分。客戶中的命令行客戶端、圖形用戶界面、應(yīng)用程序等被稱為“前臺(tái)”“客戶端”“客戶程序”,它們主要完成向服務(wù)器發(fā)送用戶請求和接收服務(wù)器返回的處理結(jié)果。而服務(wù)器中的數(shù)據(jù)庫管理系統(tǒng)被稱為“后臺(tái)”或“服務(wù)器”或“服務(wù)器程序”,主要承擔(dān)數(shù)據(jù)庫的管理工作,按客戶的請求進(jìn)行數(shù)據(jù)處理并返回處理結(jié)果,如圖1.2所示。
客戶既要完成應(yīng)用的表示邏輯,又要完成應(yīng)用的業(yè)務(wù)邏輯,完成的任務(wù)較多,“顯得較胖”,這種兩層的客戶-服務(wù)器模式被稱為胖客戶瘦服務(wù)器的客戶-服務(wù)器模式。

圖1.1 數(shù)據(jù)庫系統(tǒng)

圖1.2 客戶-服務(wù)器模式
(2)瀏覽器-服務(wù)器模式。在瀏覽器-服務(wù)器模式(browser-server model,簡稱B/S)中,將客戶細(xì)分為表示層和處理層兩個(gè)部分。表示層是客戶的操作和展示界面,一般由瀏覽器擔(dān)任,這就減少了數(shù)據(jù)庫系統(tǒng)中客戶承擔(dān)的任務(wù),使其成為瘦客戶;處理層主要負(fù)責(zé)應(yīng)用的業(yè)務(wù)邏輯實(shí)現(xiàn),它與數(shù)據(jù)層的數(shù)據(jù)庫管理系統(tǒng)共同組成功能強(qiáng)大的胖服務(wù)器。這樣,應(yīng)用被劃分為表示層、處理層和數(shù)據(jù)層三個(gè)部分,成為一種基于Web應(yīng)用的客戶-服務(wù)器模式,又被稱為三層客戶-服務(wù)器模式,如圖1.3所示。

圖1.3 瀏覽器-服務(wù)器模式
- SQL Server 2012數(shù)據(jù)庫技術(shù)與應(yīng)用(微課版)
- Learning Spring Boot
- R數(shù)據(jù)科學(xué)實(shí)戰(zhàn):工具詳解與案例分析(鮮讀版)
- Access 2016數(shù)據(jù)庫技術(shù)及應(yīng)用
- 云數(shù)據(jù)中心網(wǎng)絡(luò)與SDN:技術(shù)架構(gòu)與實(shí)現(xiàn)
- 達(dá)夢數(shù)據(jù)庫運(yùn)維實(shí)戰(zhàn)
- 大數(shù)據(jù)分析:數(shù)據(jù)倉庫項(xiàng)目實(shí)戰(zhàn)
- 數(shù)據(jù)指標(biāo)體系:構(gòu)建方法與應(yīng)用實(shí)踐
- PostgreSQL高可用實(shí)戰(zhàn)
- SOLIDWORKS 2018中文版機(jī)械設(shè)計(jì)基礎(chǔ)與實(shí)例教程
- Learn Selenium
- Mastering Java for Data Science
- 一本書讀懂區(qū)塊鏈(第2版)
- Discovering Business Intelligence Using MicroStrategy 9
- 計(jì)算機(jī)應(yīng)用實(shí)務(wù)(第3版)