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