DBMS:Database Management System 數(shù)據(jù)庫管理系統(tǒng)
DBA:Datebase Administrator 數(shù)據(jù)庫管理員
數(shù)據(jù):用符號(hào)描述事物,數(shù)據(jù)與語義不可分
數(shù)據(jù)庫:長(zhǎng)期存儲(chǔ)在計(jì)算機(jī)內(nèi),有組織,可共享的大量數(shù)據(jù)集合
若干個(gè)相關(guān)表組成的集合(R)
數(shù)據(jù)庫管理系統(tǒng):位于用戶和操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件,定義組織存儲(chǔ)管理操縱數(shù)據(jù),數(shù)據(jù)庫的建立,維護(hù),事務(wù)與運(yùn)行管理(可視化的軟件操作管理)
- 用戶角度(DBMS提供用戶):
- DCL數(shù)據(jù)控制語言:控制用戶訪問
- DDL數(shù)據(jù)定義語言:使用創(chuàng)建,DBMS解析執(zhí)行
- DML數(shù)據(jù)庫操縱語言:增刪改查
- 數(shù)據(jù)庫維護(hù)的實(shí)用程序:由DBA管理掌握
DDL、DML、DCL是數(shù)據(jù)庫語言,通過數(shù)據(jù)庫語言利用DBMS來操作數(shù)據(jù)庫
DDL、DML、DCL組成了SQL語言:結(jié)構(gòu)化的數(shù)據(jù)庫語言
數(shù)據(jù)庫語言與高級(jí)語言的區(qū)別:
一條數(shù)據(jù)庫語言相當(dāng)于高級(jí)語言的一個(gè)或者多個(gè)循環(huán)程序
高級(jí)語言(宿主語言),數(shù)據(jù)庫語言可以嵌入高級(jí)語言中即兩者可以結(jié)合使用,被嵌入的高級(jí)語言稱為宿主語言
故有:交互式數(shù)據(jù)庫語言(標(biāo)準(zhǔn)的SQL語言)和嵌入式數(shù)據(jù)庫語言(SQL語句嵌入某一種高級(jí)語言中)
- 系統(tǒng)的角度:
- 用DDL語言定義→DDL編譯器→某個(gè)引擎(可以執(zhí)行這個(gè)命令)
用DML語言操作→查詢編譯器→執(zhí)行引擎
1.2.執(zhí)行→邏輯存儲(chǔ)和物理存儲(chǔ)(會(huì)使數(shù)據(jù)從磁盤上的存儲(chǔ)到緩沖區(qū)執(zhí)行)
從第二步起到最后一步即為DBMS的主要功能 - 語言編譯器:將數(shù)據(jù)庫語言書寫的內(nèi)容,翻譯成DBMS可執(zhí)行的命令。
- 查詢優(yōu)化(執(zhí)行引擎)與查詢實(shí)現(xiàn)(基本命令的不同執(zhí)行算法):提高數(shù)據(jù)庫檢索速度的手段;
- 數(shù)據(jù)庫存取與索引:提供數(shù)據(jù)在磁盤、磁帶等上的高效存取手段。
- 通信控制:提供網(wǎng)絡(luò)環(huán)境下數(shù)據(jù)庫操作與數(shù)據(jù)傳輸?shù)氖侄?/li>
- 事務(wù)管理
- 故障恢復(fù)
- 安全性控制
- 并發(fā)控制
- 完整性控制
- 數(shù)據(jù)字典管理
- 應(yīng)用程序接口(API)
- 數(shù)據(jù)庫性能分析
- 數(shù)據(jù)庫數(shù)據(jù)裝載、重組等實(shí)用程序
數(shù)據(jù)庫系統(tǒng):是由數(shù)據(jù),數(shù)據(jù)庫,數(shù)據(jù)庫管理系統(tǒng)(及開發(fā)工具),應(yīng)用程序,數(shù)據(jù)庫管理員組成的系統(tǒng)
數(shù)據(jù)庫應(yīng)用程序(DBAP):
數(shù)據(jù)庫應(yīng)用程序→數(shù)據(jù)庫操作系統(tǒng)→數(shù)據(jù)庫
數(shù)據(jù)庫分類:
關(guān)系型數(shù)據(jù)庫(SQL) :(RDBMS)
MySQL,Oracle,SQL Sever,DB2,SQLlite
數(shù)據(jù)由表進(jìn)行存儲(chǔ),表與表之間,行與行之間有關(guān)系非關(guān)系型數(shù)據(jù)庫(No SQL) :[not only SQL]
Redis,MongDB
由對(duì)象存儲(chǔ),通過對(duì)象自身的屬性來決定操作
DBMS(數(shù)據(jù)庫管理系統(tǒng)):軟件操作管理(可視化)
關(guān)系型數(shù)據(jù)庫的管理軟件(RDBMS),類似Excel(但只能使用數(shù)據(jù)庫語言操作),如:MySQL
它可以創(chuàng)建多個(gè)數(shù)據(jù)庫,每個(gè)數(shù)據(jù)庫中有很多表。
MySQL:使用SQL語言,是RDBMS,由瑞典MySQL AB公司開發(fā),后被Qracle收購
開源的數(shù)據(jù)庫軟件,需要SQLyog進(jìn)行圖形化界面操作。
體積小,免費(fèi)授權(quán),成本低,中小型公司或者大型公司都在用,可集群,(本地/云數(shù)據(jù)庫)
官網(wǎng):https://www.mysql.com
5.7穩(wěn)定 與 8.0區(qū)別:驅(qū)動(dòng)不一樣
對(duì)表的理解:行 記錄,元組;列 屬性,字段,數(shù)據(jù)項(xiàng);表名+表標(biāo)題+表內(nèi)容=(關(guān)系)模式
該文章為學(xué)習(xí)筆記