一、資料庫的概念
1、資料庫的組成
資料(data)
描述事物的符号記錄
包括數字,文字、圖形、圖像、聲音、檔案記錄等
以“記錄”形式按統一格式進行存儲
表
将不同的記錄組織在一起
用來存儲具體資料
資料庫
表的集合,是存儲資料的倉庫
以一定的組織方式存儲的互相有關的資料集合
①、表
記錄:行
字段(屬性):列
以行+列的形式就組成了表(資料存儲在表中)
②、資料庫
多張表存儲在資料庫中
“關系型資料庫”表與表字段/屬性的關聯
2、資料庫類型
①、關系型資料庫
存儲的往往是字元、字元串、數值、布爾值等
代表有:Mysql (Oracle公司) 、SQL server (微軟) 、access (微軟公司office産品)"oracle、DB2 (IBM公司) 、 sybase (sybase)等等
②、非關系型資料庫(NoSQL (Not Only SQL))
存儲的往往是圖檔、視訊、語音等
代表有:MongoDB 、 Redis (記憶體資料庫/緩存資料庫) K-V鍵值對、與之類似的Mcmcache K-V鍵值對
redis 與 Mcmcache
相同點 存儲高熱資料(在記憶體中高速運作)
不同點 redis可以做持久化儲存,可以存儲對象
3、資料庫的管理系統(DBMS)
是實作對資料庫資源有效組織、管理和存取的系統軟體
功能:資料庫的建立和維護功能、資料定義功能、資料操控功能、資料庫的運作管理功能、通信功能
4、資料庫系統(DBS)
是一個人機系統,由硬體、OS、資料庫、DBMS、應用軟體和資料庫使用者組成
使用者可以通過DBMS或應用程式操作資料庫
二、資料庫系統發展史
1、第一代資料庫
自20世紀60年代起,第一代資料庫系統問世
是層次模型與網狀模型的資料庫系統
為統一管理和共享資料提供了有力的支撐
2、第二代資料庫
20世紀70年代初,第二代資料庫——關系資料庫開始出現
20世紀80年代初,IBM公司的關系資料庫系統DB2問世,開始逐漸取代層次與網狀模型的資料庫,成為行業主流
到目前為止,關系資料庫系統仍占領資料庫應用的主要地位
3、第三代資料庫
自20世紀80年代開始,适應不同領域的新型資料庫系統不斷湧現
面向對象的資料庫系統,實用性強、适應面廣
20世紀90年代後期,形成了多種資料庫系統共同支撐應用的局面
一些新的元素被添加進主流資料庫系統中,例如:Oracle支援的“關系-對象"資料庫模型
4、目前主流使用
目前主流資料庫的使用方法為:SQL+NoSQL,能在高并發時,NoSQL能為SQL進行相應的減壓
三、當今主流資料庫
1、SQL Server (微軟公司産品)
面向Windows作業系統
簡單、易用
2、Oracle (甲骨文公司産品)
面向所有主流平台
安全、完善、操作複雜
3、DB2 (IBM公司産品)
面向所有主流平台
大型、安全、完善
4、MySQL (甲骨文公司收購)
免費、開源、體積小
四、關系型資料庫
1、介紹
1、關系資料庫系統是基于關系模型的資料庫系統
2、關系模型的資料結構使用簡單易懂的二維資料表
3、關系模型可用簡單的"實體-關系"(E-R)圖來表示
4、E-R圖中包含了實體(資料對象)、關系和屬性三個要素
2、實體
也稱為執行個體,對應現實世界中可差別與其他對象的“事件”或“事物”
如銀行客戶、銀行賬戶等
3、屬性
實體所具有的某一特性,一個實體可以有多個屬性
如“銀行客戶”實體集中的每個實體均具有姓名、住址、電話等屬性
4、聯系
實體集之間的對應關系稱為聯系,也稱為關系
如銀行客戶和銀行賬戶之間存在“儲蓄”的關系
5、組成
所有實體機實體之間聯系的集合構成了一個關系型資料庫
五、非關系型資料庫
非關系資料庫也稱為NoSQL (Not Only SQL)
存儲資料不以關系模型為依據,不需要固定的表格式
非關系型資料庫的優點
資料庫可高并發讀寫
對海量資料高效率存儲與通路
資料庫具有高擴充性與高可用性
常用的非關系資料庫:Redis、mongoDB等
關系型資料庫 适用于對關系很明确的資料建立模型、定義、存儲資料
非關系型資料庫 存儲海量資料,給與"大資料“進行分析,篩選出有價值的部分
六、Mysql 資料庫
1、簡介
一款深受歡迎的開源關系型資料庫
Oracle旗下的産品
遵守GPL協定,可以免費使用與修改
特點
性能卓越、服務穩定
開源、無版權限制、成本低
多線程、多使用者
基于C/S(用戶端/伺服器)架構
安全可靠
2、商業版與社群版
MySQL商業版是由MySQLAB公司負責開發與維護,需要付費才能使用
MySQL社群版是由分散在世界各地的MySQL開發者愛好者一起開發與維護,可以免費使用
兩者差別
- 商業版組織管理與測試環節更加嚴格,會比社群版更穩定
- 商業版不遵守GPL,社群版遵從GPL可以免費使用
- 商業版可獲得7*24小時的服務,社群版則沒有