溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

MySQL學(xué)習(xí)之一數(shù)據(jù)庫簡(jiǎn)介

發(fā)布時(shí)間:2020-04-25 04:25:26 來源:網(wǎng)絡(luò) 閱讀:371 作者:黑馬嘯西風(fēng) 欄目:MySQL數(shù)據(jù)庫

1.什么是數(shù)據(jù)庫?

  數(shù)據(jù)庫(Database)是按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲(chǔ)和管理數(shù)據(jù)的倉庫,長(zhǎng)期儲(chǔ)存在計(jì)算機(jī)內(nèi)、有組織的、可共享的數(shù)據(jù)集合。

 數(shù)據(jù)庫中的數(shù)據(jù)指的是以一定的數(shù)據(jù)模型組織、描述和儲(chǔ)存在一起、具有盡可能小的冗余度、較高的數(shù)據(jù)獨(dú)立性和易擴(kuò)展性的特點(diǎn)并可在一定范圍內(nèi)為多個(gè)用戶共享。

2.主要特點(diǎn)

⑴ 實(shí)現(xiàn)數(shù)據(jù)共享

數(shù)據(jù)共享包含所有用戶可同時(shí)存取數(shù)據(jù)庫中的數(shù)據(jù),也包括用戶可以用各種方式通過接口使用數(shù)據(jù)庫,并提供數(shù)據(jù)共享。

⑵ 減少數(shù)據(jù)的冗余度

同文件系統(tǒng)相比,由于數(shù)據(jù)庫實(shí)現(xiàn)了數(shù)據(jù)共享,從而避免了用戶各自建立應(yīng)用文件。減少了大量重復(fù)數(shù)據(jù),減少了數(shù)據(jù)冗余,維護(hù)了數(shù)據(jù)的一致性。

⑶ 數(shù)據(jù)的獨(dú)立性

數(shù)據(jù)的獨(dú)立性包括邏輯獨(dú)立性(數(shù)據(jù)庫中數(shù)據(jù)庫的邏輯結(jié)構(gòu)和應(yīng)用程序相互獨(dú)立)和物理獨(dú)立性(數(shù)據(jù)物理結(jié)構(gòu)的變化不影響數(shù)據(jù)的邏輯結(jié)構(gòu))。

⑷ 數(shù)據(jù)實(shí)現(xiàn)集中控制

文件管理方式中,數(shù)據(jù)處于一種分散的狀態(tài),不同的用戶或同一用戶在不同處理中其文件之間毫無關(guān)系。利用數(shù)據(jù)庫可對(duì)數(shù)據(jù)進(jìn)行集中控制和管理,并通過數(shù)據(jù)模型表示各種數(shù)據(jù)的組織以及數(shù)據(jù)間的聯(lián)系。

⑸數(shù)據(jù)一致性和可維護(hù)性,以確保數(shù)據(jù)的安全性和可靠性

主要包括:①安全性控制:以防止數(shù)據(jù)丟失、錯(cuò)誤更新和越權(quán)使用;②完整性控制:保證數(shù)據(jù)的正確性、有效性和相容性;③并發(fā)控制:使在同一時(shí)間周期內(nèi),允許對(duì)數(shù)據(jù)實(shí)現(xiàn)多路存取,又能防止用戶之間的不正常交互作用。

⑹ 故障恢復(fù)

由數(shù)據(jù)庫管理系統(tǒng)提供一套方法,可及時(shí)發(fā)現(xiàn)故障和修復(fù)故障,從而防止數(shù)據(jù)被破壞。數(shù)據(jù)庫系統(tǒng)能盡快恢復(fù)數(shù)據(jù)庫系統(tǒng)運(yùn)行時(shí)出現(xiàn)的故障,可能是物理上或是邏輯上的錯(cuò)誤。比如對(duì)系統(tǒng)的誤操作造成的數(shù)據(jù)錯(cuò)誤等。

3.數(shù)據(jù)庫種類

(1).比較流行的數(shù)據(jù)庫模型有三種:層次式數(shù)據(jù)庫,網(wǎng)絡(luò)式數(shù)據(jù)庫,關(guān)系型數(shù)據(jù)庫.現(xiàn)在最常用的是關(guān)系型數(shù)據(jù)庫和非關(guān)系型數(shù)據(jù)庫,這兩類就是現(xiàn)在用的最廣泛的.

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

關(guān)系型數(shù)據(jù)庫就是把復(fù)雜的數(shù)據(jù)結(jié)構(gòu)歸結(jié)為簡(jiǎn)單的二元關(guān)系(即二維表格形式)。在關(guān)系型數(shù)據(jù)庫中,對(duì)數(shù)據(jù)的操作幾乎全部建立在一個(gè)或者多個(gè)關(guān)系表格上,通過對(duì)這些關(guān)聯(lián)的表格分類,合并,連接或者選取等運(yùn)算來實(shí)現(xiàn)數(shù)據(jù)的管理.主要的關(guān)系型數(shù)據(jù)庫代表為:MySQL,Oracle.

MySQL:

被廣泛的應(yīng)用在Internet的大中小網(wǎng)站中,體積小,速度快,開源,所以很受歡迎,

主要使用者:互聯(lián)網(wǎng),各種網(wǎng)站,游戲公司,電商平臺(tái).

Oracle:

性能優(yōu)越,不開源,價(jià)格昂貴.

主要是傳統(tǒng)的大企業(yè),大公司,政府,金融,證券等行業(yè)使用.

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

        NoSQL,泛指非關(guān)系型的數(shù)據(jù)庫。NoSQL(NoSQL = Not Only SQL ),意即“不僅僅是SQL,是一項(xiàng)全新的數(shù)據(jù)庫革命性運(yùn)動(dòng),隨著互聯(lián)網(wǎng)web2.0網(wǎng)站的興起,傳統(tǒng)的關(guān)系數(shù)據(jù)庫在應(yīng)付web2.0網(wǎng)站,特別是超大規(guī)模和高并發(fā)的SNS類型的web2.0純動(dòng)態(tài)網(wǎng)站已經(jīng)顯得力不從心,暴露了很多難以克服的問題,而非關(guān)系型的數(shù)據(jù)庫則由于其本身的特點(diǎn)得到了非常迅速的發(fā)展。NoSQL數(shù)據(jù)庫的產(chǎn)生就是為了解決大規(guī)模數(shù)據(jù)集合多重?cái)?shù)據(jù)種類帶來的挑戰(zhàn),尤其是大數(shù)據(jù)應(yīng)用難題。

計(jì)算機(jī)體系結(jié)構(gòu)在數(shù)據(jù)存儲(chǔ)方面要求具備龐大的水平擴(kuò)展性,而NoSQL致力于改變這一現(xiàn)狀。Google的 BigTableAmazon 的Dynamo使用的就是NoSQL型數(shù)據(jù)庫,Facebook的Cassandra,Apache的HBase.redis,mongodb.

6.數(shù)據(jù)庫緩存機(jī)制:

      Memcached是一個(gè)高性能的分布式內(nèi)存對(duì)象緩存系統(tǒng),用于動(dòng)態(tài)Web應(yīng)用以減輕數(shù)據(jù)庫負(fù)載。它通過在內(nèi)存中緩存數(shù)據(jù)和對(duì)象來減少讀取數(shù)據(jù)庫的次數(shù),從而提高動(dòng)態(tài)、數(shù)據(jù)庫驅(qū)動(dòng)網(wǎng)站的速度。Memcached基于一個(gè)存儲(chǔ)鍵/值對(duì)的hashmap。其守護(hù)進(jìn)程(daemon )是用C寫的,但是客戶端可以用任何語言來編寫,并通過memcached協(xié)議與守護(hù)進(jìn)程通信。

由于memcached為純內(nèi)存軟件,一旦重啟所有數(shù)據(jù)都會(huì)丟失,所以新浪基于其開發(fā)了持久化存儲(chǔ)機(jī)制,和異步主輔復(fù)制機(jī)制,使其具有事務(wù)恢復(fù)功能,持久化數(shù)據(jù)存儲(chǔ)和分布式復(fù)制能力,最近幾年逐步被redis所替代.

新浪基于這個(gè)開發(fā)了一個(gè)機(jī)制,斷電之后,數(shù)據(jù)還是會(huì)保存.

redis是一個(gè)key-value存儲(chǔ)系統(tǒng)。和Memcached類似,它支持存儲(chǔ)的value類型相對(duì)更多,包括string(字符串)、list(鏈表)、set(集合)、zset(sorted set --有序集合)和hash(哈希類型)。


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI