一起來了解mysql數(shù)據(jù)庫
一、數(shù)據(jù)庫是什么?
數(shù)據(jù)庫是管理數(shù)據(jù)的一類軟件。對數(shù)據(jù)的管理體現(xiàn)在兩個方面,第一是描述數(shù)據(jù),即一條數(shù)據(jù)如何表示,第二是組織數(shù)據(jù),即很多數(shù)據(jù)如何管理。
數(shù)據(jù)庫的主要目的是實現(xiàn)對數(shù)據(jù)的增刪改查。
二、數(shù)據(jù)庫的分類?
數(shù)據(jù)庫主要分為關(guān)系型數(shù)據(jù)庫和分關(guān)系型數(shù)據(jù)庫。
| 關(guān)系型數(shù)據(jù)庫 | 非關(guān)系型數(shù)據(jù)庫 | |
| 對數(shù)據(jù)的要求 | 數(shù)據(jù)規(guī)范統(tǒng)一 | 不要求數(shù)據(jù)規(guī)范統(tǒng)一 |
| 組織數(shù)據(jù)的形式 | 表 | 文檔/鍵值對 |
| 具體如何組織 |
同類的數(shù)據(jù)放到一個表中 表中的每一行是一條記錄 每一條記錄包含很多列,要求這些列的類型和含義統(tǒng)一 |
每條記錄都是一個文檔,每個文檔中的屬性和字段都不要求相同 |
| 優(yōu)點 | 對數(shù)據(jù)的校驗更加嚴格 | 對數(shù)據(jù)校驗不那么嚴格,但是更高效,更適合于現(xiàn)在的分布式系統(tǒng)。 |
| 典型代表 | Oracle,MySQL,SQL Server | MangoDB,Redis,HBase |
三、數(shù)據(jù)庫和數(shù)據(jù)結(jié)構(gòu)的區(qū)別
數(shù)據(jù)結(jié)構(gòu):是一門抽象的學(xué)科,研究的是數(shù)據(jù)的邏輯結(jié)構(gòu)和數(shù)據(jù)的物理結(jié)構(gòu)以及它們之間的相互關(guān)系,并對這種結(jié)構(gòu)定義相適應(yīng)的運算,設(shè)計出相應(yīng)的算法
數(shù)據(jù)庫:是一類更具體的軟件,在實現(xiàn)這個軟件的過程中用到很多數(shù)據(jù)結(jié)構(gòu)。
很多軟件實現(xiàn)增刪改查都需要用到數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)庫只是其中的一個應(yīng)用場景。
四、MySQL數(shù)據(jù)庫的介紹
4.1 MySQL數(shù)據(jù)庫的組成
MySQL數(shù)據(jù)庫是一個“客戶端-服務(wù)器”程序,客戶端是主動發(fā)起請求的一方,客戶端發(fā)送的數(shù)據(jù)稱為請求(request),服務(wù)器是被動接受請求的一方,服務(wù)器返回的數(shù)據(jù)稱為響應(yīng)(response),客戶端和服務(wù)器之間通過網(wǎng)絡(luò)來進行通信。
在安裝MySQL數(shù)據(jù)庫時,可以將客戶端和服務(wù)器安裝在同一臺主機上,也可以將其分別安裝不同主機上。在實際情況中,同一臺服務(wù)器,可以為多個客戶端提供服務(wù)。
| MySQL客戶端 | 是一個非常簡單的程序,僅僅用來和用戶交互。(數(shù)據(jù)庫編程,指的是實現(xiàn)一個客戶端,與服務(wù)器沒關(guān)系) |
| MySQL服務(wù)器 | 是數(shù)據(jù)庫的本體,MySQL數(shù)據(jù)庫將數(shù)據(jù)存儲在服務(wù)器上。 |
主流的MySQL版本:MySQL5系列、MySQL8系列。
4.2 MySQL服務(wù)器的介紹
MySQL服務(wù)器上包含若干個數(shù)據(jù)庫,每個數(shù)據(jù)庫都是一組數(shù)據(jù)表邏輯上的集合(將有關(guān)聯(lián)的表放在一起)。

服務(wù)器:包含多個數(shù)據(jù)庫
數(shù)據(jù)庫:包含多個表
表:包含多行,每行是一條記錄
行:包含多列,每列是一個字段
4.3 MySQL數(shù)據(jù)庫的數(shù)據(jù)存儲位置
很多數(shù)據(jù)庫將數(shù)據(jù)存儲在外存中,如MySQL、Oracle等,少部分數(shù)據(jù)庫將數(shù)據(jù)存儲在內(nèi)存中,如Redis。
MySQL將數(shù)據(jù)存儲在硬盤。原因如下:
首先,先了解內(nèi)存和硬盤的區(qū)別:
內(nèi)存的空間少,硬盤的空間大;內(nèi)存比硬盤價格更貴;如果掉電,內(nèi)存上的數(shù)據(jù)會丟失,硬盤上的數(shù)據(jù)不會丟失。
數(shù)據(jù)庫存儲數(shù)據(jù)的要求:容量大,因為數(shù)據(jù)量很大;期望有更低的成本;期望掉電后數(shù)據(jù)不丟失,能夠持久化存儲;硬盤與內(nèi)存相比,完全符合這些要求,所以選擇硬盤來存儲數(shù)據(jù)。
如果存儲的數(shù)據(jù)量很大,可以選擇使用一下方法:
①多加幾個硬盤
②使用多臺機器存儲,MySQL的分庫分表。
總結(jié)
首先,介紹了數(shù)據(jù)庫的分類,分為結(jié)構(gòu)型數(shù)據(jù)庫和非結(jié)構(gòu)型數(shù)據(jù)庫兩類。其次,介紹了MySQL數(shù)據(jù)庫的組成,即MySQL由客戶端和服務(wù)器組成,服務(wù)器是MySQL的主體。最后,介紹了MySQL服務(wù)器是將數(shù)據(jù)存儲在硬盤上,原因為硬盤容量大、便宜和能實現(xiàn)持久化存儲。
到此這篇關(guān)于一起來了解mysql數(shù)據(jù)庫的文章就介紹到這了,更多相關(guān)mysql數(shù)據(jù)庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MySQL存儲過程的創(chuàng)建使用以及實現(xiàn)數(shù)據(jù)快速插入
因最近想要測試一下MySQL百萬級數(shù)據(jù)處理過程,所以要一次對數(shù)據(jù)庫快速插入大量數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于MySQL存儲過程的創(chuàng)建使用以及實現(xiàn)數(shù)據(jù)快速插入的相關(guān)資料,需要的朋友可以參考下2023-03-03

