官方定義:mysql
數據庫是將數據按照必定的數據模型組織, 描述和存儲, 具備較小的冗餘, 較高數據獨立性和易擴展性, 並做爲各類用戶共享的數據集合sql
不過, 我更喜歡我本身的理解:數據庫
數據庫, 顧名思義, 就是數據的倉庫windows
其實相關概念還有不少, 舉個栗子吧...bash
假設你有一個工廠, 用來生產電視機, 那麼確定也須要一個倉庫來存儲電視, 還須要招聘一個管理倉儲的王大爺...工具
那麼問題來了, 你爲何須要一個倉庫?post
數據管理
)數據持久化
)這裏的電視機就是DATA(數據)
優化
存放電視機的倉庫就是DB(數據庫)
spa
這裏的王大爺就是DBA(數據庫管理員)
操作系統
你問:"老王, 我們今天有多少電視機入庫?"
王大爺說: "稍等, 老總, 我用管理軟件查一下..."
這裏的管理軟件就是DBMS(數據庫管理系統)
, 常見DMS: MySQL, Oracle, SQL server
有下面一個公式:
DBS = DBA 使用 DBMS 管理 DB
數據庫系統
就是數據庫管理員
使用數據庫管理系統
來管理數據庫
簡單來講, 就是想辦法不讓數據丟失.
可能你會好奇, 什麼數據存在計算機裏, 還會丟失?
答案是: 可能會, 也可能不會...主要看你把它存到了哪裏
這裏須要引出兩個概念內存
,硬盤
內存的特色, 速度快, 很是之快, 斷電數據丟失
硬盤的特色, 容量大, 很是之大, 斷電數據不丟失
簡單的說, 內存小而快, 硬盤慢而大, 4000G(4T)硬盤的價格約等於16G內存的價格, 4000:16
因此, 要想數據持久化, 就必須把數據存到硬盤裏
若是你是用數據庫管理系統的話, 它會自動完成數據持久化
最著名的數據庫管理系統DBMS, 就是前面老王使用的管理軟件
固然DBMS不止MySQL一個, MySQL爲何能在衆多DBMS中脫穎而出呢?
這裏只講windows系統的壓縮包安裝方式, 由於這種方式最簡單,最流行
把壓縮包解壓到D:\test_mysql_57
(路徑隨意)
把bin目錄的路徑()添加到環境變量, 由於該文件夾下有msyql.exe(命令行工具-客戶端)
和msyqld.exe(服務端)
一路點擊肯定
, 關閉剛纔全部的彈窗
建立配置文件: D:\test_mysql_57\my.ini
建立數據存儲文件夾: D:\test_mysql_57\data
內容以下
[client]
port=3306 # 默認端口號
[mysql]
default-character-set=utf8 # 默認字符集
[mysqld]
port=3306
basedir="D:/test_mysql_57/" # mysql路徑
datadir="D:/test_mysql_57/data/" # mysql數據路徑
character-set-server=utf8 # 默認字符集
default-storage-engine=innodb # 默認數據庫引擎
複製代碼
windows+X
打開命令行(管理員身份),
輸入命令: mysqld install 鏈接名 --defaults-file="配置文件路徑"
mysqld install mysql3306 --defaults-file="D:\test_mysql_57\my.ini"
複製代碼
輸入以下命令
mysqld --initialize
複製代碼
輸入以下命令
net start mysql3306
複製代碼
再從文件中找到默認密碼
D:\test_mysql_57\data\USER-20170622RQ.err
使用默認密碼登陸mysql, 重置密碼
mysql -h localhost -u root -p
複製代碼
SET PASSWORD = PASSWORD('你的新密碼');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
flush privileges;
複製代碼
啓動mysql:輸入 net start mysql;
中止mysql:輸入 net stop mysql;
windows下不能直接重啓(restart),只能先中止,再啓動。
存放數據的倉庫, 因此本質上是一個容器
經過列
和行
組成二維表, 來存儲數據
一列稱爲一個字段
一行稱爲一個記錄
每個格子
存一個數據
數據庫
裏有數據表
, 數據表
裏有行
和列
, 行來存儲數據
, 列來描述數據
用戶表和用戶詳情表
「用戶詳情表表」,其字段包含:姓名、性別、年齡、身高、體重、籍貫和居住地等
國家表,城市表
學生表, 課程表
須要中間表創建聯繫
設計數據表遵照的規範
是爲了解決數據的存儲和優化問題
冗餘和效率
符合範式, 數據不容易重複, 可是查詢起來比較費事
爲了速度, 能夠多買點硬盤...