咱們一般稱 Mysql 、Oracle、SQLite之類的爲數據庫, 其實本質上它們是一個個數據庫管理軟件python
在學習Mysql以前, 咱們的數據想要永久保存,通常都是保存在硬盤中, 硬盤的單位就是文件, 毫無疑問, 一個文件僅僅只能存在於一臺機器上, 可是一個程序的全部組件不可能都在一臺機器上, 若是都在一臺機器上, 那麼就會產生許多問題, 下面將介紹會產生的問題以及數據庫管理軟件的解決方案mysql
針對上面產生的問題以及解決方案, 咱們在編寫任何程序以前, 都須要事先寫好基於網絡操做一臺主機上文件的程序 (socket服務端與客戶端程序)程序員
因而有人將此類程序寫成一個專門的處理軟件,這就是mysql等數據庫管理軟件的由來redis
但mysql解決的不只僅是數據共享的問題, 還有查詢效率, 安全性等一系列問題, 總之, 把程序員從數據管理中解脫出來, 專一於本身的程序邏輯的編寫sql
數據(Data), 就是描述事物的符號, 它能夠是數字, 也能夠是文字、圖片、圖像、聲音、語言等, 數據由多種表現形式,它們均可以通過數字化後存入計算機, 在計算機中描述一個事物, 就須要抽取這一事物的典型特徵, 組成一條記錄, 就至關於文件裏的一行內容mongodb
派大星,man,22,1999,美國,IT,17屆,斯坦福 # 一條記錄 章魚哥,man,35,1986,美國,餐飲,10屆,斯坦福 # 一條記錄
單純的記錄沒有什麼意義, 必須給予說明, 因而咱們就能夠按逗號做爲分隔,依次定義各個字段的意思,至關於定義表的標題數據庫
name,sex,age,birth,addr,industry,entrance_time,school # 字段 派大星,man,22,1999,美國,IT,17屆,斯坦福 # 一條記錄 章魚哥,man,35,1986,美國,餐飲,10屆,斯坦福 # 一條記錄
添加字段以後咱們就能知道每條記錄每一個逗號分隔開的都是表明什麼意思安全
數據庫(DataBase)簡稱DB, 它是存放數據的倉庫, 只不過這個倉庫是在計算機存儲設備上, 並且數據是按必定的格式存放的, 過去人們將數據存放在文件櫃裏, 如今數據量龐大, 已經再也不適用, 數據庫是長期存放在計算機內、有組織、可共享的數據便可, 數據庫中的數據按必定的數據模型組織、描述和儲存, 具備較小的冗餘度、較高的數據獨立性和易擴展性, 並可爲各類用戶共享服務器
數據庫管理軟件(DataBase Management System)簡稱DBMS網絡
在瞭解了Data與DB的概念後, 如何科學地組織和存儲數據, 如何高效獲取和維護數據成了關鍵, 這就用到了一個系統軟件---->數據庫管理系統, 如MySQL、Oracle、SQLite、Access、MS SQL Server
mysql主要用於大型門戶, 例如搜狗、新浪等, 它主要的優點就是開放源代碼, 由於開放源代碼這個數據庫是免費的, 他如今是甲骨文公司的產品
oracle主要用於銀行、鐵路、飛機場等, 該數據庫功能強大, 軟件費用高, 也是甲骨文公司的產品
sql server是微軟公司的產品, 主要應用於大中型企業, 如聯想、方正等
由上面的介紹咱們已經知道, 數據庫管理軟件的本質就是一個C/S套接字程序, 一個服務端套接字, 一個客戶端套接字, 而數據庫管理軟件不只僅只有一種, 他們也有兩種分類