數(shù)據(jù)庫 之 發(fā)展和概念闡述

1 概述

本文主要介紹了數(shù)據(jù)庫的發(fā)展史和數(shù)據(jù)庫的相關(guān)概念介紹

2 數(shù)據(jù)庫的發(fā)展史

2.1 萌芽階段-----文件系統(tǒng)

使用磁盤文件來存儲數(shù)據(jù)

不利于大型數(shù)據(jù)進行管理,只能用戶簡單的數(shù)據(jù)管理

2.2 初級階段-----第一代數(shù)據(jù)庫

出現(xiàn)了網(wǎng)狀模型、層次模型的數(shù)據(jù)庫

這里只能算是數(shù)據(jù)庫的管理系統(tǒng)浙宜,用戶不需要直接打開文件鸠补,通過軟件來打開對應(yīng)的文件

2.3 中級階段-----第二代數(shù)據(jù)庫

關(guān)系型數(shù)據(jù)庫和結(jié)構(gòu)化查詢語言

層次性結(jié)構(gòu)

網(wǎng)狀型結(jié)構(gòu)

關(guān)系型數(shù)據(jù)庫

2.4 高級階段------新一代數(shù)據(jù)庫

“關(guān)系-對象”型數(shù)據(jù)庫

3? 數(shù)據(jù)庫管理系統(tǒng)

3.1 數(shù)據(jù)庫管理系統(tǒng)

.數(shù)據(jù)庫是數(shù)據(jù)的匯集家破,它以一定的組織形式存于存儲介質(zhì)上

.DBMS是管理數(shù)據(jù)庫的系統(tǒng)軟件遗锣,它實現(xiàn)數(shù)據(jù)庫系統(tǒng)的各種功能。是數(shù)據(jù)庫系統(tǒng)的核心

? ? DBMS是一套解決方案哺壶,是軟件,管理數(shù)據(jù)庫里的數(shù)據(jù)蜒谤,如mysql,oracle山宾,不同的數(shù)據(jù)庫管理系統(tǒng)支持的文件格式不一樣

.DBA:負責(zé)數(shù)據(jù)庫的規(guī)劃、設(shè)計鳍徽、協(xié)調(diào)资锰、維護和管理等工作

.應(yīng)用程序指以數(shù)據(jù)庫為基礎(chǔ)的應(yīng)用程序

3.2 數(shù)據(jù)庫管理系統(tǒng)的優(yōu)點

.相互關(guān)聯(lián)的數(shù)據(jù)的集合

.較少的數(shù)據(jù)冗余

.程序與數(shù)據(jù)相互獨立

.保證數(shù)據(jù)的安全、可靠

.最大限度地保證數(shù)據(jù)的正確性

.數(shù)據(jù)可以并發(fā)使用并能同時保證一致性

文件管理系統(tǒng)有如下的缺點

.編寫應(yīng)用程序不方便

.數(shù)據(jù)冗余不可避免

.應(yīng)用程序依賴性

.不支持對文件的并發(fā)訪問

.數(shù)據(jù)間聯(lián)系弱

.難以按用戶視圖表示數(shù)據(jù)

.無安全控制功能

3.3 數(shù)據(jù)庫管理系統(tǒng)的基本功能

.數(shù)據(jù)定義

在數(shù)據(jù)庫里把數(shù)據(jù)定義出來阶祭,如存儲的屬性有哪些绷杜,如一個學(xué)生的姓名,身份證等

.數(shù)據(jù)處理

數(shù)據(jù)處理濒募,如增刪改查

.數(shù)據(jù)安全

如創(chuàng)建賬號鞭盟,分配權(quán)限

.數(shù)據(jù)備份

有專門的數(shù)據(jù)庫備份工具,數(shù)據(jù)可能放在內(nèi)存中或者文件中瑰剃,不單單是在文件中齿诉,備份工具能把內(nèi)存中的數(shù)據(jù)也拷貝出來

4? 數(shù)據(jù)庫系統(tǒng)的架構(gòu)

.單機架構(gòu)

excel就是單機架構(gòu)

.大型主機/終端架構(gòu)

早期的環(huán)境,如一個主機讓多個終端接入

.主從式架構(gòu)(C/S)

主從架構(gòu)是目前主流的架構(gòu)晌姚,如安裝server粤剧,客戶端通過客戶端軟件基于網(wǎng)絡(luò)連接到服務(wù)器訪問數(shù)據(jù)

.分布式架構(gòu)

大型企業(yè)會將數(shù)據(jù)分布在多個地方進行存儲,難度增大挥唠,但是更加靈活

5 關(guān)系型數(shù)據(jù)庫

.關(guān)系:關(guān)系就是二維表抵恋。并滿足如下性質(zhì):

.行row:表中的每一行,又稱為一條記錄

.列column:表中的每一列猛遍,稱為屬性馋记,字段

.主鍵(Primary? key):用于唯一確定一個記錄的字段

主鍵:作用于某個字段上号坡,那么該字段的所有值都是唯一的,確保表中沒有完全一樣的數(shù)據(jù)梯醒,主鍵不能為空值宽堆,一個表只能有一個主鍵

復(fù)合主鍵:把多列的數(shù)據(jù)組合為一個主鍵,多個字段組成的復(fù)合主鍵算是一個主鍵

.域domain:屬性的取值范圍茸习,如畜隶,性別只能是‘男’和‘女’兩個值

.唯一鍵:一張表中可以有多個唯一鍵,允許為空值号胚。

5.1 關(guān)系數(shù)據(jù)庫:RDBMS

.RDBMS:

MySQL: MySQL, MariaDB, PerconaServer

mysql是開源產(chǎn)品

MariaDB是mysql的分支籽慢,

PostgreSQL:簡稱為pgsql,EnterpriseDB猫胁,

PostgreSQL:號稱性能最好的開源數(shù)據(jù)庫箱亿,但是用戶量少

Oracle:

MSSQL:

DB2:

5.2 關(guān)系型數(shù)據(jù)庫的常見組件

.數(shù)據(jù)庫:database

.表:table

行:row

列:column

.索引:index,就像是書的目錄弃秆,可以快速提高查詢速度

.視圖:view届惋,是一個虛擬表,取物理表中特定的字段或特定的列或行

.用戶:user

.權(quán)限:privilege

.存儲過程:procedure菠赚,過程無返回值脑豹,這是數(shù)據(jù)庫里專有,有函數(shù)和過程衡查,如下的function,這個是內(nèi)置的的瘩欺,用戶也可以手動創(chuàng)建

.存儲函數(shù):function,過程有返回值

.觸發(fā)器:trigger拌牲。用觸發(fā)器來監(jiān)控表的的某個字段是否發(fā)生變化俱饿,一旦發(fā)生變化,觸發(fā)另一種表做相應(yīng)的變更

.事件調(diào)度器:event

scheduler们拙,任務(wù)計劃稍途,相當(dāng)于cron計劃任務(wù)

5.3 事務(wù)

事務(wù)transaction:多個操作被當(dāng)作一個整體對待

ACID,是指在可靠數(shù)據(jù)庫管理系統(tǒng)(DBMS)中砚婆,事務(wù)(transaction)所應(yīng)該具有的四個特性:原子性(Atomicity)械拍、一致性(Consistency)、隔離性(Isolation)装盯、持久性(Durability).這是可靠數(shù)據(jù)庫所應(yīng)具備的幾個特性.下面針對這幾個特性進行逐個講解.

A:原子性

指事務(wù)是一個不可再分割的工作單位坷虑,事務(wù)中的操作要么都發(fā)生,要么都不發(fā)生埂奈。

針對事務(wù)來說的

mysql和sqserver執(zhí)行命令后迄损,默認是commit

oracle如果執(zhí)行命令后,還沒commit后账磺,就代表還沒完成事物

C:一致性

數(shù)據(jù)在進行操作的時候芹敌,必須是從一個一致性的狀態(tài)切換到另一個一致性的狀態(tài)

數(shù)據(jù)庫設(shè)計的是讀的狀態(tài)痊远,而不是結(jié)束時的狀態(tài),讀的時候會將數(shù)據(jù)放到一個地方氏捞,保證了一致性

I:隔離性

多個事務(wù)同時進行時系統(tǒng)會進行隔離

D:持久性

一旦執(zhí)行了commit碧聪,數(shù)據(jù)就不能修改

中間狀態(tài)的數(shù)據(jù)(即沒有提交的數(shù)據(jù))叫dirty data.

undo和redo的區(qū)別

undo就是撤銷的操作

redo就是重新做操作

操作完,一般先把記錄寫在日志里

做修改后液茎,一般是先在內(nèi)存中修改逞姿,將修改寫入日志中,已經(jīng)執(zhí)行了cmd1,正在執(zhí)行cmd2,但是突然出現(xiàn)異常后捆等,cmd2還么完成就被或被執(zhí)行undo滞造,而在日志中的cmd1,則會被提交到數(shù)據(jù)庫中栋烤,這個動作叫做redo

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末谒养,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子班缎,更是在濱河造成了極大的恐慌蝴光,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,946評論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件达址,死亡現(xiàn)場離奇詭異,居然都是意外死亡趁耗,警方通過查閱死者的電腦和手機沉唠,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,336評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來苛败,“玉大人满葛,你說我怎么就攤上這事“涨” “怎么了嘀韧?”我有些...
    開封第一講書人閱讀 169,716評論 0 364
  • 文/不壞的土叔 我叫張陵,是天一觀的道長缠捌。 經(jīng)常有香客問我锄贷,道長,這世上最難降的妖魔是什么曼月? 我笑而不...
    開封第一講書人閱讀 60,222評論 1 300
  • 正文 為了忘掉前任谊却,我火速辦了婚禮,結(jié)果婚禮上哑芹,老公的妹妹穿的比我還像新娘炎辨。我一直安慰自己,他們只是感情好聪姿,可當(dāng)我...
    茶點故事閱讀 69,223評論 6 398
  • 文/花漫 我一把揭開白布碴萧。 她就那樣靜靜地躺著乙嘀,像睡著了一般。 火紅的嫁衣襯著肌膚如雪破喻。 梳的紋絲不亂的頭發(fā)上虎谢,一...
    開封第一講書人閱讀 52,807評論 1 314
  • 那天,我揣著相機與錄音低缩,去河邊找鬼嘉冒。 笑死,一個胖子當(dāng)著我的面吹牛咆繁,可吹牛的內(nèi)容都是我干的讳推。 我是一名探鬼主播,決...
    沈念sama閱讀 41,235評論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼玩般,長吁一口氣:“原來是場噩夢啊……” “哼银觅!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起坏为,我...
    開封第一講書人閱讀 40,189評論 0 277
  • 序言:老撾萬榮一對情侶失蹤究驴,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后匀伏,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體洒忧,經(jīng)...
    沈念sama閱讀 46,712評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,775評論 3 343
  • 正文 我和宋清朗相戀三年够颠,在試婚紗的時候發(fā)現(xiàn)自己被綠了熙侍。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,926評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡履磨,死狀恐怖蛉抓,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情剃诅,我是刑警寧澤巷送,帶...
    沈念sama閱讀 36,580評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站矛辕,受9級特大地震影響笑跛,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜如筛,卻給世界環(huán)境...
    茶點故事閱讀 42,259評論 3 336
  • 文/蒙蒙 一堡牡、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧杨刨,春花似錦晤柄、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,750評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽惠勒。三九已至,卻和暖如春爬坑,著一層夾襖步出監(jiān)牢的瞬間纠屋,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,867評論 1 274
  • 我被黑心中介騙來泰國打工盾计, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留售担,地道東北人。 一個月前我還...
    沈念sama閱讀 49,368評論 3 379
  • 正文 我出身青樓署辉,卻偏偏與公主長得像族铆,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子哭尝,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,930評論 2 361

推薦閱讀更多精彩內(nèi)容