課程簡介
MySQL作為目前最為活躍熱門的開源數(shù)據(jù)庫,以低成本和簡易操作的組合方案在互聯(lián)網(wǎng)企業(yè)中被廣泛采用而大放異彩。在炙手可熱的BAT中,MySQL正被大量使用。顯然,對于想在互聯(lián)網(wǎng)行業(yè)大展手腳的數(shù)據(jù)庫工程師和DBA們,熟練的MySQL技術(shù)無疑是一塊很好的敲門磚。
本次課程會從從一個系統(tǒng)的知識結(jié)構(gòu)來解讀MySQL的運維體系和優(yōu)化實戰(zhàn)內(nèi)容,通過大量的實戰(zhàn)案例能夠做到融會貫通,全面掌握MySQL的技能并運用到企業(yè)實戰(zhàn)之中。
目標(biāo)收益
1、掌握MySQL體系結(jié)構(gòu)
2、掌握MySQL基礎(chǔ)運維內(nèi)容
3、掌握MySQL備份恢復(fù)方案
4、掌握MySQL高可用方案
5、了解MySQL性能優(yōu)化基礎(chǔ)
6、掌握SQL優(yōu)化基礎(chǔ)
培訓(xùn)對象
數(shù)據(jù)庫管理員(DBA),IT系統(tǒng)維護人員,企業(yè)IT架構(gòu)師,應(yīng)用開發(fā)高級人員
課程大綱
課程分為三個部分,基礎(chǔ)課程,管理運維,優(yōu)化課程三個部分,是一個由淺入深,彼此關(guān)聯(lián) 的一個進階課程。 1. 基礎(chǔ)課程-數(shù)據(jù)庫簡介和準(zhǔn)備 |
作為 DBA,每天會有很多繁瑣復(fù)雜的工作內(nèi)容。這里會重點介紹 DBA 的分工,每天的工 作內(nèi)容,可以從中對 DBA 的工作有一個基本全面的認識和了解,從 DBA 的職業(yè)規(guī)劃和 挑戰(zhàn)說起,解讀 MySQL 發(fā)展概況,并對新版本特性做出解讀。 1) 數(shù)據(jù)庫行業(yè)情況 2) DBA 的分工和工作內(nèi)容 3) MySQL 最新技術(shù)動態(tài)和特性解讀 |
2. 基礎(chǔ)課程-數(shù)據(jù)庫規(guī)范和常見問題應(yīng)對 |
DBA 的工作中有很多規(guī)范準(zhǔn)則, 有些是硬性的明文規(guī)定, 有些只可意會, 對于 MySQL DBA 都極為關(guān)鍵,每一次問題背后都是深刻的經(jīng)驗教訓(xùn),本課會從一些日常碰到的大量問題 來折射這些規(guī)范的必要性。 1) MySQL 常見問題 2) MySQL 的訪問模式對比 3) MySQL 數(shù)據(jù)庫啟停過程對比 4) 數(shù)據(jù)庫恢復(fù)標(biāo)準(zhǔn) 5) 演示幾個數(shù)據(jù)庫 bug 和分析過程 6) 數(shù)據(jù)庫操作規(guī)范 |
3. 基礎(chǔ)課程-數(shù)據(jù)庫企業(yè)級安裝部署 |
數(shù)據(jù)庫軟件的安裝和創(chuàng)建數(shù)據(jù)庫實例是工作中的必備內(nèi)容,其實方法很多,而不是簡單 的圖形工具,企業(yè)級安裝部署幾乎沒有圖形安裝方式,對于 MySQL 會詳細講解 rpm 安 裝方式,二進制安裝方式,以及創(chuàng)建 MySQL 數(shù)據(jù)庫的注意事項。 1.企業(yè)版和社區(qū)版 2. rpm 安裝方式 3. 二進制安裝方式 4. 安裝的規(guī)范和標(biāo)準(zhǔn) |
4. 基礎(chǔ)課程-SQL 開發(fā)基礎(chǔ) |
對于 DBA 來說,SQL 開發(fā)基礎(chǔ)是基本功,但是有時候卻恰恰是 DBA 所不擅長的,本節(jié)課 會從基本的 SQL 類型說起,引申 MySQL 常用,實用的函數(shù),對于復(fù)雜查詢和子查詢的 解讀,最后分析一下 MySQL 的存儲過程和特有的 SQL 語法。 1.基本 SQL 類型 2.MySQL 常用,使用的函數(shù) 3.MySQL 復(fù)雜語句和子查詢解讀 4.MySQL 存儲過程和特有 SQL 語法 5. 管理運維課程-體系結(jié)構(gòu) |
5.MySQL 體系結(jié)構(gòu)的內(nèi)容非常龐大,本課將會以受人以魚,不如授之以漁的方式教授學(xué) |
習(xí)思路,MySQL 方面重點解析 buffer pool,并對 InnoDB 的體系結(jié)構(gòu)做出深入的解讀,此 課將教會你從一條 SQL 語句的執(zhí)行報錯信息來推理 SQL 解析的過程,可以通過這種方式 一窺其中的原理,通過大量的測試來理解體系結(jié)構(gòu),最后給出一些學(xué)習(xí)的建議和方法。 1. 解析 MySQL buffer pool 2. 解析 MySQL InnoDB 體系結(jié)構(gòu) 3. 深入剖析一條 SQL 語句來推理 SQL 解析的過程 |
6. 管理運維課程-常用工具使用 |
數(shù)據(jù)庫常用工具很多,工欲善其事,必先利其器,對于 MySQL 則會分析系統(tǒng)自帶的常 用命令和工具,并會演示第三方的常用工具和使用方法。 1. MySQL 系統(tǒng)自帶的常用命令和工具 2. 常用的第三方工具使用和方法 |
7. 管理運維課程-數(shù)據(jù)庫對象管理 |
對于 MySQL 除了解析數(shù)據(jù)字典外,還有常規(guī)的更新類操作細則和注意事項說明,以 及一些較有難度和挑戰(zhàn)的操作,會介紹 pt 工具,MySQL online DDL 的內(nèi)容。 1. MySQL 的日常更新 2. MySQL online DDL 的注意事項 3. Pt 工具的使用 |
8. 管理運維課程-備份恢復(fù) |
對于 MySQL 則會講解邏輯備份(mysqldump)和物理備份(xtracbackup)工具的使用和 注意事項,并對 Oracle 官方的 mysqlbackup 和第三方工具 mydump 做出解讀。數(shù)據(jù)恢復(fù) 方面則會演示手工數(shù)據(jù)恢復(fù)和第三方工具 binlog2sql 的使用。 1. MySQL 邏輯備份和恢復(fù) 2. MySQL 物理備份和恢復(fù) 3. Mysqlbackup 使用 4. Mydump 使用 5. MySQL DML 數(shù)據(jù)手工恢復(fù) 6. MySQL DML 閃回恢復(fù) |
9. 管理運維課程-容災(zāi)和切換 |
災(zāi)備是數(shù)據(jù)最后的救命稻草,對于 MySQL,則會講解常見的主從搭建,GTID 使用,并 對 MySQL 的復(fù)制改進方案并行復(fù)制作出深度的解讀, 并會演示第三方解決方案 MHA 的 使用。 1. MySQL 主從搭建 2. MySQL sandbox 搭建主從 3. MySQL GTID 的使用 4. MySQL 并行復(fù)制解讀和測試 5. MySQL MHA 搭建過程 |
10. 管理運維課程-容災(zāi)和切換進階 |
對于 MySQL,除了經(jīng)典的異步解決方案,還有半同步,組復(fù)制(Group Replication) 作 出實踐總結(jié),并分分鐘搭建 MGR 環(huán)境演示一些特性,對于最新發(fā)布的 InnoDB Cluster 也會演示搭建過程。 1. MySQL 數(shù)據(jù)異步復(fù)制方案 2. MySQL 半同步 3. MySQL Group Replication 搭建技巧 |
11. 優(yōu)化課程-優(yōu)化工具 |
對于 MySQL,則會解讀 sys schema,并對常用的一些優(yōu)化診斷工具, 比如 pt, mysql-sniffer, innotop 等工具演示使用方式方法。 1. MySQL sys schema 解讀 2. pt 工具診斷 3. mysql-sniffer 診斷 4. innotop 使用 |
12. 優(yōu)化課程-優(yōu)化知識儲備 |
優(yōu)化固然重要,基礎(chǔ)的知識儲備必不可少。在 MySQL 方面,對于優(yōu)化器,索引對性 能的差異會有詳細的說明,對常見的查詢優(yōu)化和限制,半連接,反連接等在不同版本的 演進作出解讀。 1. MySQL 優(yōu)化器解讀 2. MySQL 索引的使用要領(lǐng) 3. MySQL 的查詢優(yōu)化限制 4. MySQL 半連接優(yōu)化 5. MySQL 反連接優(yōu)化 |
13. 優(yōu)化課程-系統(tǒng)實例優(yōu)化和壓測 |
對于 MySQL 則會通過 swingbench 壓測的方式來不斷改進,得到一個符合基本業(yè)務(wù)需 求的配置需求。 1. MySQL 相關(guān)內(nèi)核參數(shù)優(yōu)化 2. MySQL 數(shù)據(jù)庫參數(shù)優(yōu)化 3. 使用 sysbench 壓測 MySQL |
14. 優(yōu)化課程-SQL 優(yōu)化 |
SQL 優(yōu)化的技巧非常多,本課將會介紹大量真實的 SQL 優(yōu)化場景和技巧。技巧分為常 規(guī)技巧和一些自己的感悟。真正秉燭燃燒傳授最實用內(nèi)功! 1. MySQL 查詢優(yōu)化 2. MySQL 優(yōu)化技巧和分析思路 |
課程分為三個部分,基礎(chǔ)課程,管理運維,優(yōu)化課程三個部分,是一個由淺入深,彼此關(guān)聯(lián) 的一個進階課程。 1. 基礎(chǔ)課程-數(shù)據(jù)庫簡介和準(zhǔn)備 作為 DBA,每天會有很多繁瑣復(fù)雜的工作內(nèi)容。這里會重點介紹 DBA 的分工,每天的工 作內(nèi)容,可以從中對 DBA 的工作有一個基本全面的認識和了解,從 DBA 的職業(yè)規(guī)劃和 挑戰(zhàn)說起,解讀 MySQL 發(fā)展概況,并對新版本特性做出解讀。 1) 數(shù)據(jù)庫行業(yè)情況 2) DBA 的分工和工作內(nèi)容 3) MySQL 最新技術(shù)動態(tài)和特性解讀 |
2. 基礎(chǔ)課程-數(shù)據(jù)庫規(guī)范和常見問題應(yīng)對 DBA 的工作中有很多規(guī)范準(zhǔn)則, 有些是硬性的明文規(guī)定, 有些只可意會, 對于 MySQL DBA 都極為關(guān)鍵,每一次問題背后都是深刻的經(jīng)驗教訓(xùn),本課會從一些日常碰到的大量問題 來折射這些規(guī)范的必要性。 1) MySQL 常見問題 2) MySQL 的訪問模式對比 3) MySQL 數(shù)據(jù)庫啟停過程對比 4) 數(shù)據(jù)庫恢復(fù)標(biāo)準(zhǔn) 5) 演示幾個數(shù)據(jù)庫 bug 和分析過程 6) 數(shù)據(jù)庫操作規(guī)范 |
3. 基礎(chǔ)課程-數(shù)據(jù)庫企業(yè)級安裝部署 數(shù)據(jù)庫軟件的安裝和創(chuàng)建數(shù)據(jù)庫實例是工作中的必備內(nèi)容,其實方法很多,而不是簡單 的圖形工具,企業(yè)級安裝部署幾乎沒有圖形安裝方式,對于 MySQL 會詳細講解 rpm 安 裝方式,二進制安裝方式,以及創(chuàng)建 MySQL 數(shù)據(jù)庫的注意事項。 1.企業(yè)版和社區(qū)版 2. rpm 安裝方式 3. 二進制安裝方式 4. 安裝的規(guī)范和標(biāo)準(zhǔn) |
4. 基礎(chǔ)課程-SQL 開發(fā)基礎(chǔ) 對于 DBA 來說,SQL 開發(fā)基礎(chǔ)是基本功,但是有時候卻恰恰是 DBA 所不擅長的,本節(jié)課 會從基本的 SQL 類型說起,引申 MySQL 常用,實用的函數(shù),對于復(fù)雜查詢和子查詢的 解讀,最后分析一下 MySQL 的存儲過程和特有的 SQL 語法。 1.基本 SQL 類型 2.MySQL 常用,使用的函數(shù) 3.MySQL 復(fù)雜語句和子查詢解讀 4.MySQL 存儲過程和特有 SQL 語法 5. 管理運維課程-體系結(jié)構(gòu) |
5.MySQL 體系結(jié)構(gòu)的內(nèi)容非常龐大,本課將會以受人以魚,不如授之以漁的方式教授學(xué) 習(xí)思路,MySQL 方面重點解析 buffer pool,并對 InnoDB 的體系結(jié)構(gòu)做出深入的解讀,此 課將教會你從一條 SQL 語句的執(zhí)行報錯信息來推理 SQL 解析的過程,可以通過這種方式 一窺其中的原理,通過大量的測試來理解體系結(jié)構(gòu),最后給出一些學(xué)習(xí)的建議和方法。 1. 解析 MySQL buffer pool 2. 解析 MySQL InnoDB 體系結(jié)構(gòu) 3. 深入剖析一條 SQL 語句來推理 SQL 解析的過程 |
6. 管理運維課程-常用工具使用 數(shù)據(jù)庫常用工具很多,工欲善其事,必先利其器,對于 MySQL 則會分析系統(tǒng)自帶的常 用命令和工具,并會演示第三方的常用工具和使用方法。 1. MySQL 系統(tǒng)自帶的常用命令和工具 2. 常用的第三方工具使用和方法 |
7. 管理運維課程-數(shù)據(jù)庫對象管理 對于 MySQL 除了解析數(shù)據(jù)字典外,還有常規(guī)的更新類操作細則和注意事項說明,以 及一些較有難度和挑戰(zhàn)的操作,會介紹 pt 工具,MySQL online DDL 的內(nèi)容。 1. MySQL 的日常更新 2. MySQL online DDL 的注意事項 3. Pt 工具的使用 |
8. 管理運維課程-備份恢復(fù) 對于 MySQL 則會講解邏輯備份(mysqldump)和物理備份(xtracbackup)工具的使用和 注意事項,并對 Oracle 官方的 mysqlbackup 和第三方工具 mydump 做出解讀。數(shù)據(jù)恢復(fù) 方面則會演示手工數(shù)據(jù)恢復(fù)和第三方工具 binlog2sql 的使用。 1. MySQL 邏輯備份和恢復(fù) 2. MySQL 物理備份和恢復(fù) 3. Mysqlbackup 使用 4. Mydump 使用 5. MySQL DML 數(shù)據(jù)手工恢復(fù) 6. MySQL DML 閃回恢復(fù) |
9. 管理運維課程-容災(zāi)和切換 災(zāi)備是數(shù)據(jù)最后的救命稻草,對于 MySQL,則會講解常見的主從搭建,GTID 使用,并 對 MySQL 的復(fù)制改進方案并行復(fù)制作出深度的解讀, 并會演示第三方解決方案 MHA 的 使用。 1. MySQL 主從搭建 2. MySQL sandbox 搭建主從 3. MySQL GTID 的使用 4. MySQL 并行復(fù)制解讀和測試 5. MySQL MHA 搭建過程 |
10. 管理運維課程-容災(zāi)和切換進階 對于 MySQL,除了經(jīng)典的異步解決方案,還有半同步,組復(fù)制(Group Replication) 作 出實踐總結(jié),并分分鐘搭建 MGR 環(huán)境演示一些特性,對于最新發(fā)布的 InnoDB Cluster 也會演示搭建過程。 1. MySQL 數(shù)據(jù)異步復(fù)制方案 2. MySQL 半同步 3. MySQL Group Replication 搭建技巧 |
11. 優(yōu)化課程-優(yōu)化工具 對于 MySQL,則會解讀 sys schema,并對常用的一些優(yōu)化診斷工具, 比如 pt, mysql-sniffer, innotop 等工具演示使用方式方法。 1. MySQL sys schema 解讀 2. pt 工具診斷 3. mysql-sniffer 診斷 4. innotop 使用 |
12. 優(yōu)化課程-優(yōu)化知識儲備 優(yōu)化固然重要,基礎(chǔ)的知識儲備必不可少。在 MySQL 方面,對于優(yōu)化器,索引對性 能的差異會有詳細的說明,對常見的查詢優(yōu)化和限制,半連接,反連接等在不同版本的 演進作出解讀。 1. MySQL 優(yōu)化器解讀 2. MySQL 索引的使用要領(lǐng) 3. MySQL 的查詢優(yōu)化限制 4. MySQL 半連接優(yōu)化 5. MySQL 反連接優(yōu)化 |
13. 優(yōu)化課程-系統(tǒng)實例優(yōu)化和壓測 對于 MySQL 則會通過 swingbench 壓測的方式來不斷改進,得到一個符合基本業(yè)務(wù)需 求的配置需求。 1. MySQL 相關(guān)內(nèi)核參數(shù)優(yōu)化 2. MySQL 數(shù)據(jù)庫參數(shù)優(yōu)化 3. 使用 sysbench 壓測 MySQL |
14. 優(yōu)化課程-SQL 優(yōu)化 SQL 優(yōu)化的技巧非常多,本課將會介紹大量真實的 SQL 優(yōu)化場景和技巧。技巧分為常 規(guī)技巧和一些自己的感悟。真正秉燭燃燒傳授最實用內(nèi)功! 1. MySQL 查詢優(yōu)化 2. MySQL 優(yōu)化技巧和分析思路 |