《精通MySQL 8(視頻教學版)》是2019年清華大學出版社出版的圖書,作者是劉華貞。
基本介紹
- 書名:精通MySQL 8(視頻教學版)
- 作者:劉華貞
- 出版社:清華大學出版社
- 出版時間:2019年06月01日
- 定價:79 元
- ISBN:9787302528746
內容簡介,圖書目錄,
內容簡介
本書以MySQL 8版本為基礎,通過全面的基礎知識循序漸進,基本覆蓋資料庫使用技術和場景,結合當下流行的Java開發,配套實例演示MySQL的整體使用,提供全程多媒體語音教學視頻以及所涉及的SQL源碼。 本書共20章,涵蓋的主要內容有:MySQL 8的安裝,升級和新特性,資料庫操作,數據表操作,數據操作,數據查詢,索引,視圖,存儲過程和函式,觸發器,事務和鎖,安全管理,資料庫備份,恢復與複製,MySQL服務管理,日誌管理,MySQL 8數據字典新特性,MySQL 8 InnoDB新特性,MySQL 8 NoSQL新特性,Java連線資料庫,網上課堂資料庫設計與實現,論壇系統資料庫設計與實現。 本書內容新穎,知識全面,適合各個層次的開發人員或資料庫管理人員閱讀,特別適合想了解MySQL最新前沿技術的人員參考。
圖書目錄
第1章 MySQL 8的安裝、升級和新特性 1
1.1 認識MySQL資料庫 1
1.1.1 MySQL與開源文化 1
1.1.2 MySQL發展歷史 2
1.1.3 使用MySQL的優勢 3
1.2 MySQL 8的新特性 4
1.2.1 更簡便的NoSQL支持 4
1.2.2 更好的索引 4
1.2.3 更完善的JSON支持 4
1.2.4 安全和賬戶管理 4
1.2.5 InnoDB的變化 4
1.2.6 數據字典 5
1.2.7 原子數據定義語句 5
1.2.8 資源管理 5
1.2.9 字元集支持 6
1.2.10 最佳化器增強 6
1.2.11 通用表表達式 6
1.2.12 視窗函式 6
1.2.13 正則表達式支持 7
1.2.14 內部臨時表 7
1.2.15 日誌記錄 7
1.2.16 備份鎖 7
1.2.17 增強的MySQL複製 7
1.3 MySQL 8移除的舊特性 7
1.3.1 查詢快取 8
1.3.2 加密相關 8
1.3.3 空間函式相關 8
1.3.4 \N和NULL 8
1.3.5 mysql_install_db 8
1.3.6 通用分區處理程式 9
1.3.7 系統和狀態變數信息 9
1.3.8 mysql_plugin工具 9
1.4 Windows平台下安裝與配置MySQL 9
1.4.1 安裝MySQL 8 9
1.4.2 配置MySQL 8 13
1.4.3 啟動MySQ...
1.4.4關閉MySQL服務 20
1.4.5配置Path變數 21
1.4.6登錄MySQL資料庫 22
1.5Linux平台下安裝與配置MySQL 22
1.5.1安裝和配置MySQL8 23
1.5.2啟動MySQL服務 27
1.5.3登錄MySQL資料庫 28
1.6MacOSX平台下安裝與配置MySQL 29
1.6.1安裝MySQL8 29
1.6.2啟動MySQL8 32
1.6.3配置和登錄MySQL8 32
1.7MySQL的升級和降級 33
1.7.1升級MySQL 34
1.7.2降級MySQL 37
1.7.3重建或修復表或索引 37
1.7.4將MySQL資料庫複製到另一台機器 38
1.8MySQL常用圖形管理工具 39
1.8.1MySQL官方客戶端MySQL-Workbench 39
1.8.2SQLyog圖形管理工具 43
1.8.3Navicat圖形管理工具 55
第2章資料庫操作 60
2.1運算元據庫 60
2.1.1創建資料庫 60
2.1.2查看資料庫 61
2.1.3選擇資料庫 61
2.1.4刪除資料庫 61
2.2什麼是存儲引擎 62
2.2.1MySQL支持的存儲引擎 62
2.2.2InnoDB存儲引擎 64
2.2.3MyISAM存儲引擎 65
2.2.4MEMORY存儲引擎 65
2.2.5選擇存儲引擎 66
第3章數據表操作 68
3.1數據表的設計理念 68
3.2資料庫中的數據類型 70
3.2.1整數類型 70
3.2.2浮點數類型和定點數類型 72
3.2.3日期與時間類型 73
3.2.4字元串類型 74
3.2.5二進制類型 76
3.2.6JSON類型及MySQL8JSON增強 77
3.2.7Spatial數據類型 82
3.3MySQL8新特性:字元集與排序規則 82
3.3.1一般字元集和排序規則 82
3.3.2MySQL中的字元集和排序規則 83
3.3.3指定字元集和排序規則 85
3.3.4連線字元集和排序規則 89
3.3.5配置應用程式字元集和排序 90
3.3.6錯誤訊息字元集 91
3.3.7列字元集轉換 91
3.3.8排序問題 91
3.3.9Unicode支持 93
3.3.10支持的字元集和排序規則 94
3.3.11設定錯誤訊息語言 95
3.3.12添加字元集 96
3.3.13將排序規則添加到字元集 97
3.3.14字元集配置 98
3.3.15MySQL伺服器區域設定支持 98
3.4創建表 99
3.4.1創建表的語法形式 99
3.4.2創建帶JSON類型的表 100
3.5查看錶結構 100
3.5.1DESCRIBE語句查看錶定義 100
3.5.2SHOWCREATETABLE語句查看錶詳細定義 101
3.6刪除表 102
3.7修改表 103
3.7.1修改表名 103
3.7.2增加欄位 104
3.7.3刪除欄位 107
3.7.4修改欄位 107
3.8操作表的約束 109
3.8.1設定表欄位的非空約束(NOTNULL,NK) 110
3.8.2設定表欄位的默認值(DEFAULT) 111
3.8.3設定表欄位唯一約束(UNIQUE,UK) 112
3.8.4設定表欄位的主鍵約束(PRIMARY,PK) 113
3.8.5設定表欄位值自動增加(AUTO_INCREMENT) 116
3.8.6設定表欄位的外鍵約束(FOREIGNKEY,FK) 116
第4章數據操作 119
4.1插入數據記錄 119
4.1.1插入完整數據記錄 119
4.1.2插入部分數據記錄 120
4.1.3插入多條完整數據記錄 121
4.1.4插入多條部分數據記錄 122
4.1.5插入JSON結構的數據記錄 122
4.2更新數據記錄 123
4.2.1更新特定數據記錄 123
4.2.2更新所有數據記錄 124
4.2.3更新JSON結構的數據記錄 124
4.3刪除數據記錄 125
4.3.1刪除特定數據記錄 125
4.3.2刪除所有數據記錄 125
第5章數據查詢 126
5.1簡單查詢 126
5.1.1查詢所有欄位數據 127
5.1.2查詢指定欄位數據 127
5.1.3DISTINCT查詢 127
5.1.4IN查詢 128
5.1.5BETWEENAND查詢 130
5.1.6LIKE模糊查詢 130
5.1.7對查詢結果排序 131
5.1.8簡單分組查詢 132
5.1.9統計分組查詢 133
5.2聯合查詢 134
5.2.1內連線查詢 134
5.2.2外連線查詢 136
5.2.3合併查詢數據記錄 137
5.2.4子查詢 138
第6章索引 140
6.1什麼是索引 140
6.1.1索引的含義和特點 140
6.1.2索引的分類 141
6.1.3索引的設計原則 142
6.2創建和查看索引 143
6.2.1普通索引 143
6.2.2唯一索引 146
6.2.3全文索引 147
6.2.4多列索引 149
6.3MySQL8中索引新特性 151
6.3.1隱藏索引 151
6.3.2降序索引 153
6.4刪除索引 154
第7章視圖 156
7.1什麼時候使用視圖 156
7.2創建視圖 157
7.2.1創建視圖的語法形式 157
7.2.2在單表上創建視圖 158
7.2.3在多表上創建視圖 159
7.3查看視圖 160
7.3.1使用DESCRIBE|DESC語句查看視圖基本信息 161
7.3.2使用SHOWTABLES語句查看視圖基本信息 161
7.3.3在views表中查看視圖詳細信息 161
7.4修改視圖 162
7.4.1使用CREATEORREPLACEVIEW語句修改視圖 162
7.4.2使用ALTER語句修改視圖 163
7.5更新視圖 164
7.5.1使用SQL語句更新視圖 164
7.5.2更新基本表後視圖自動更新 165
7.5.3刪除視圖中的數據 166
7.5.4不能更新的視圖 167
7.6刪除視圖 169
第8章存儲過程和函式 171
8.1創建存儲過程和函式 171
8.1.1創建存儲過程 172
8.1.2創建存儲函式 174
8.1.3變數的使用 175
8.1.4定義條件和處理程式 176
8.1.5游標的使用 178
8.1.6流程控制的使用 179
8.2調用存儲過程和函式 183
8.2.1調用存儲過程 183
8.2.2調用存儲函式 184
8.3查看存儲過程和函式 184
8.3.1使用SHOWSTATUS語句查看存儲過程和函式的狀態 185
8.3.2使用SHOWCREATE語句查看存儲過程和函式的定義 186
8.3.3從information_schema.Routine表中查看存儲過程和函式的信息 187
8.4修改存儲過程和函式 189
8.5刪除存儲過程和函式 190
第9章觸發器 193
9.1什麼時候使用觸發器 193
9.2創建觸發器 194
9.2.1創建有一條執行語句的觸發器 194
9.2.2創建包含多條執行語句的觸發器 195
9.3查看觸發器 197
9.3.1通過SHOWTRIGGERS語句查看觸發器 197
9.3.2通過查看系統表triggers實現查看觸發器 198
9.4刪除觸發器 200
第10章事務和鎖 201
10.1事務概述 201
10.2MySQL事務控制語句 203
10.3MySQL事務隔離級別 205
10.3.1READ-UNCOMMITED(讀取未提交內容) 206
10.3.2READ-COMMITED(讀取提交內容) 207
10.3.3REPEATABLE-READ(可重讀) 207
10.3.4SERIALIZABLE(可串列化) 209
10.4InnoDB鎖機制 209
10.4.1鎖的類型 210
10.4.2鎖粒度 211
第11章安全管理 213
11.1許可權表 213
11.1.1user表 214
11.1.2db表 215
11.1.3tables_priv表和columns_priv表 217
11.1.4procs_priv表 218
11.2賬戶管理 218
11.2.1登錄和退出MySQL伺服器 218
11.2.2新建普通用戶 220
11.2.3刪除普通用戶 221
11.2.4root用戶修改自己的密碼 222
11.2.5root用戶修改普通用戶的密碼 223
11.2.6普通用戶修改密碼 225
11.2.7root用戶密碼丟失的解決辦法 225
11.2.8MySQL8密碼管理 229
11.3MySQL8新特性:角色 232
11.3.1創建角色並給角色授權 232
11.3.2給用戶添加角色 233
11.3.3編輯角色或許可權 235
11.3.4刪除角色 236
11.4訪問控制 236
11.4.1連線核實階段 236
11.4.2請求核實階段 237
11.5MySQL8新特性:安全組件和外掛程式 237
11.5.1身份驗證外掛程式 238
11.5.2連線控制外掛程式 239
11.5.3密碼驗證組件 240
11.5.4MySQLKeyring 241
11.5.5MySQL企業審計 242
11.5.6MySQL企業防火牆 242
11.6MySQL8新特性:FIPS 246
11.6.1FIPS概述 246
11.6.2MySQL中FIPS模式的系統要求 246
11.6.3在MySQL中配置FIPS模式 246
第12章資料庫備份、恢復與複製 247
12.1數據備份 247
12.1.1使用mysqldump命令備份一個資料庫 248
12.1.2使用mysqldump命令備份一個資料庫的某幾張表 250
12.1.3使用mysqldump命令備份多個資料庫 252
12.1.4直接複製整個資料庫目錄 255
12.1.5備份鎖 255
12.2數據恢復 255
12.2.1使用mysql命令恢復 255
12.2.2直接複製到資料庫目錄 256
12.3資料庫遷移 257
12.3.1相同版本的MySQL資料庫之間的遷移 257
12.3.2不同版本的MySQL資料庫之間的遷移 258
12.3.3不同資料庫之間的遷移 258
12.4表的導出和導入 259
12.4.1使用SELECT…INTOOUTFILE導出文本檔案 259
12.4.2使用mysqldump命令導出文本檔案 261
12.4.3使用mysql命令導出文本檔案 265
12.4.4使用LOADDATAINFILE方式導入文本檔案 268
12.4.5使用mysqlimport方式導入文本檔案 270
12.5數據複製 273
12.5.1配置複製 273
12.5.2複製實現 275
12.5.3複製解決方案 276
12.5.4複製注釋和提示 279
12.6組複製 280
12.6.1組複製背景 280
12.6.2監視組複製 282
12.6.3組複製操作 284
12.6.4組複製安全性 286
12.6.5組複製系統變數 286
12.6.6要求和限制 287
第13章MySQL服務管理 289
13.1MySQL服務 289
13.1.1配置MySQL服務 289
13.1.2服務系統變數 291
13.1.3服務的SQL模式 292
13.2MySQL數據目錄 292
13.3系統資料庫mysql 293
13.3.1數據字典表 293
13.3.2授權系統表 294
13.3.3對象信息系統表 295
13.3.4日誌系統表 295
13.3.5服務端幫助系統表 295
13.3.6時區系統表 296
13.3.7複製系統表 296
13.3.8最佳化器系統表 296
13.3.9其他系統表 297
13.4MySQL服務日誌 297
13.5MySQL服務組件 297
13.6MySQL服務外掛程式 298
13.7在一台機器上運行多個MySQL實例 298
第14章日誌管理 300
14.1MySQL軟體所支持的日誌 300
14.2操作二進制日誌 301
14.2.1啟動二進制日誌 302
14.2.2查看二進制日誌 303
14.2.3使用二進制日誌恢複數據庫 304
14.2.4暫停二進制日誌 305
14.2.5刪除二進制日誌 305
14.3操作錯誤日誌 308
14.3.1啟動錯誤日誌 308
14.3.2查看錯誤日誌 309
14.3.3刪除錯誤日誌 310
14.4通用查詢日誌 310
14.4.1啟動通用查詢日誌 311
14.4.2查看通用查詢日誌 312
14.4.3停止通用查詢日誌 312
14.4.4刪除通用查詢日誌 313
14.5慢查詢日誌 314
14.5.1啟動慢查詢日誌 314
14.5.2查看和分析慢查詢日誌 317
14.5.3停止慢查詢日誌 318
14.5.4刪除慢查詢日誌 319
第15章MySQL8新特性:數據字典 321
15.1數據字典模式 321
15.2刪除基於檔案的元數據存儲 322
15.3字典數據的事務存儲 322
15.4字典對象快取 322
15.5INFORMATION_SCHEMA和數據字典集成 323
15.6序列化字典信息(SDI) 323
15.7數據字典用法差異 324
15.8數據字典限制 324
第16章MySQL8新特性:InnoDB 325
16.1InnoDB表的優勢 325
16.2InnoDB和ACID模型 326
16.3InnoDB架構 327
16.4表空間 329
16.5表和索引 330
16.5.1InnoDB表 330
16.5.2InnoDB索引 331
16.6備份和恢復 332
16.7InnoDB和MySQL複製 333
16.8memcached外掛程式 334
第17章MySQL8新特性:NoSQL 337
17.1NoSQL的概念 337
17.2將MySQL設定為NoSQL存儲 337
17.3MySQLShell 339
17.4X外掛程式 345
第18章Java操作MySQL資料庫 347
18.1Java連線MySQL資料庫 347
18.1.1JDBC簡介 347
18.1.2下載JDBC驅動MySQLConnector/J 349
18.1.3Windows下安裝MySQLConnector/J驅動 350
18.1.4Linux和MacOSX下安裝MySQLConnector/J驅動 350
18.1.5IntelliJIDEA環境下安裝MySQLConnector/J驅動 350
18.1.6Java連線MySQL資料庫 352
18.2使用Statement執行SQL語句 353
18.2.1executeQuery()查詢 353
18.2.2execute()查詢 355
18.2.3executeUpdate()插入數據 356
18.2.4executeUpdate()修改數據 357
18.2.5executeUpdate()刪除數據 358
18.3使用PreparedStatement執行SQL語句 359
18.3.1executeQuery()查詢 359
18.3.2execute()查詢 361
18.3.3executeUpdate()插入數據 362
18.3.4executeUpdate()修改數據 363
18.3.5executeUpdate()刪除數據 364
18.4Java備份和恢復MySQL資料庫 365
18.4.1使用Java備份MySQL資料庫 365
18.4.2使用Java恢復MySQL資料庫 366
第19章網上課堂系統資料庫設計 368
19.1系統概述 368
19.2系統功能 369
19.3資料庫設計和實現 369
19.3.1設計表 369
19.3.2設計索引 374
19.3.3設計視圖 375
19.3.4設計觸發器 375
19.4項目小結 376
第20章論壇管理系統資料庫設計 377
20.1系統概述 377
20.2系統功能 378
20.3資料庫設計和實現 378
20.3.1設計表 378
20.3.2設計索引 382
20.3.3設計視圖 383
20.3.4設計觸發器 383
20.4項目小結 384