MySQL數據庫技術與應用(慕課版)
內容描述
本書作為MySQL數據庫教程,不僅介紹了MySQL開發中的函數與事務,而且涉及了MySQL在企業中的主流架構方式和數據災備方案。全書共分13章,內容包括數據庫概述、環境的安裝與基本配置、MySQL數據操作、數據庫單表查詢、數據的完整性、數據庫多表查詢、權限與賬戶管理、存儲過程與觸發器、數據庫事務和鎖機制、MySQL數據備份、日誌管理、主從復制、MySQL讀寫分離。全書以案例引導,每個案例圍繞知識點講解相關技術,有助於讀者在理解知識點的基礎上,更好地運用相關技術,達到學以致用的目的。
本書可以作為高等院校電腦相關專業的教材及教學參考書,還可作為MySQL開發人員的自學用書。
目錄大綱
第1章 數據庫概述 1
1.1 數據庫系統 1
1.1.1 數據與信息 1
1.1.2 數據存儲單元——服務器 1
1.1.3 數據庫系統的構成 2
1.1.4 數據庫系統的特點 3
1.2 數據庫類型 4
1.2.1 數據模型 4
1.2.2 關系型數據庫 5
1.2.3 非關系型數據庫 6
1.3 關系型數據庫MySQL 7
1.3.1 為什麽使用MySQL 7
1.3.2 MySQL的發展簡史 8
1.3.3 MySQL的版本分類與發展 8
1.3.4 企業中如何選擇MySQL版本 9
1.4 本章小結 10
1.5 習題 10
第2章 環境的安裝與基本配置 11
2.1 虛擬化平臺 11
2.1.1 系統虛擬化 11
2.1.2 搭建實驗平臺 12
2.1.3 虛擬平臺的基本使用 13
2.2 CentOS系統的部署 14
2.2.1 CentOS系統 14
2.2.2 系統下載 15
2.2.3 最小化安裝CentOS 16
2.3 MySQL的安裝與配置 21
2.3.1 MySQL安裝方式 21
2.3.2 Yum方式安裝 22
2.3.3 源碼編譯方式安裝 25
2.3.4 初始化數據庫 28
2.4 本章小結 29
2.5 習題 29
第3章 MySQL數據操作 31
3.1 SQL語句 31
3.1.1 SQL簡介 31
3.1.2 SQL分類 31
3.2 數據類型 32
3.2.1 數值類型 32
3.2.2 字符串類型 33
3.2.3 日期和時間類型 34
3.3 存儲引擎 35
3.3.1 MySQL的存儲引擎 35
3.3.2 常用引擎MyISAM與InnoDB的區別 37
3.3.3 存儲引擎的選擇 38
3.4 庫與表的基礎操作 38
3.4.1 庫操作 38
3.4.2 表操作 41
3.5 表的高級操作 44
3.5.1 數據的插入 44
3.5.2 刪除表內容 47
3.5.3 修改數據表 49
3.5.4 更新數據 52
3.6 本章小結 54
3.7 習題 54
第4章 數據庫單表查詢 56
4.1 基礎查詢 56
4.1.1 創建基本的數據表環境 56
4.1.2 查詢所有字段 61
4.1.3 查詢指定字段 62
4.2 條件查詢 63
4.2.1 關系運算符 63
4.2.2 多條件查詢 64
4.3 高級查詢 68
4.3.1 排序查詢 68
4.3.2 聚合函數 70
4.3.3 分組查詢 72
4.3.4 HAVING子句 72
4.3.5 LIMIT分頁 73
4.4 本章小結 74
4.5 習題 74
第5章 數據的完整性 75
5.1 實體完整性 75
5.1.1 主鍵與主鍵約束 75
5.1.2 唯一約束 77
5.1.3 自動增長列 78
5.2 域完整性 79
5.2.1 非空約束 79
5.2.2 默認值約束 80
5.3 引用完整性 81
5.3.1 外鍵與外鍵約束 81
5.3.2 刪除外鍵約束 83
5.4 索引 84
5.4.1 普通索引 84
5.4.2 唯一索引 87
5.4.3 索引過多引發的問題 88
5.5 本章小結 89
5.6 習題 89
第6章 數據庫多表查詢 90
6.1 表與表之間的關系 90
6.1.1 一對一關系 91
6.1.2 一對多關系 92
6.1.3 多對一關系 93
6.1.4 多對多關系 93
6.2 多表查詢 95
6.2.1 合並結果集 95
6.2.2 關於笛卡兒積 97
6.2.3 內連接 100
6.2.4 外連接 101
6.2.5 自然連接 103
6.2.6 嵌套查詢 104
6.3 本章小結 105
6.4 習題 105
第7章 權限與賬戶管理 107
7.1 權限表 107
7.2 賬戶管理 111
7.2.1 登錄和退出數據庫 111
7.2.2 創建與刪除用戶 112
7.2.3 修改賬戶密碼 115
7.2.4 刪除與修改用戶名 117
7.3 權限管理 117
7.3.1 MySQL的權限 118
7.3.2 授予權限 120
7.3.3 查看權限 121
7.3.4 收回權限 121
7.4 本章小結 122
7.5 習題 122
第8章 存儲過程與觸發器 124
8.1 存儲過程 124
8.1.1 存儲過程概述 124
8.1.2 存儲過程的優缺點 124
8.1.3 創建存儲過程 125
8.1.4 查看存儲過程 128
8.1.5 刪除存儲過程 130
8.2 觸發器 130
8.2.1 觸發器概述 130
8.2.2 創建觸發器 131
8.2.3 查看觸發器 133
8.2.4 刪除觸發器 135
8.3 本章小結 135
8.4 習題 135
第9章 數據庫事務和鎖機制 137
9.1 事務管理 137
9.1.1 事務的概念 137
9.1.2 事務的創建和回滾 138
9.1.3 並發與並行 142
9.1.4 事務的ACID特性 143
9.1.5 事務的隔離級別 143
9.1.6 隔離級別的選取 149
9.2 鎖機制 149
9.2.1 MySQL鎖定機制簡介 149
9.2.2 InnoDB鎖類型 150
9.2.3 鎖監控與優化 153
9.3 本章小結 153
9.4 習題 153
第10章 MySQL數據備份 155
10.1 數據備份概述 155
10.1.1 數據備份原則 155
10.1.2 備份類型的劃分 156
10.2 物理備份 157
10.2.1 tar打包備份 157
10.2.2 LVM快照備份 158
10.2.3 xtrabackup備份 159
10.3 邏輯備份 163
10.4 本章小結 164
10.5 習題 165
第11章 日誌管理 166
11.1 日誌分類 166
11.1.1 錯誤日誌 166
11.1.2 二進制日誌 167
11.1.3 慢查詢日誌 173
11.1.4 中繼日誌 174
11.1.5 Redo日誌和Undo日誌 174
11.1.6 查詢日誌 175
11.2 日誌應用 175
11.3 本章小結 178
11.4 習題 18
第12章 主從復制 180
12.1 主從復制原理 180
12.1.1 復制過程 180
12.1.2 基本架構 181
12.1.3 3復制模式 183
12.2 一主一從復制 183
12.2.1 基於位點的主從復制 184
12.2.2 基於GTID的主從復制 189
12.3 多主多從復制 191
12.3.1 雙主雙從搭建流程 191
12.3.2 關於Keepalived 192
12.4 復制延遲與死機處理 196
12.5 本章小結 196
12.6 習題 196
第13章 MySQL讀寫分離 198
13.1 數據庫代理 198
13.1.1 基本原理 198
13.1.2 常見的數據庫中間件 199
13.2 Mycat實現讀寫分離 200
13.2.1 基本環境 200
13.2.2 配置流程 200
13.3 本章小結 207
13.4 習題 207
作者介紹
千鋒教育
1.千鋒教育採用全程面授高品質、高成本培養模式,教學大綱緊跟企業需求,擁有全國一體化就業保障服務,成為學員信賴的IT職業教育品牌。
2.獲得榮譽包括:中關村移動互聯網產業聯盟副理事長單位、中國軟件協會教育培訓委員會認證一級培訓機構、中關村國際孵化軟件協會授權中關村移動互聯網學院、教育部教育管理信息中心指定移動互聯網實訓基地等。