1.MySQL
1.1 MySQL介紹部署
1.1.1 數(shù)據(jù)庫(kù)產(chǎn)品種類
RDBMS:
MySQL:(主)
Oracle,PG,SQL server(了解):安裝框仔,基本連接使用喻喳,備份恢復(fù)挺据,高可用饼灿,集群。
NoSQL:
Redis,MongoDB,ES
1.1.2 MySQL 版本了解
MySQL 5.6靶累,5.7.20
1.1.3 安裝方法
二進(jìn)制,RPM,源碼包
1.1.4升級(jí)
5.6 到8.0
5.6 到5.7
resume:精通各分支MySQL5.6,5.7,8.0等主流版本軟件結(jié)構(gòu)特性腺毫。??????????
1.2MySQL的體系結(jié)構(gòu)和管理
1.2.1CS結(jié)構(gòu)
1.2.2實(shí)例
mysql master thread 干活的線程 預(yù)分配的內(nèi)存
1.2.3 mysqld的三層結(jié)構(gòu)
連接層
SQL層
存儲(chǔ)引擎層
1.2.4MySQL的邏輯結(jié)構(gòu)
1.2.5MySQL的物理結(jié)構(gòu)
1.2.6基礎(chǔ)管理
用戶權(quán)限管理
連接管理
啟動(dòng)關(guān)閉方式
初始化配置管理
多實(shí)例應(yīng)用
resume:熟悉MySQL的程序結(jié)構(gòu)原理,物理結(jié)構(gòu)挣柬,邏輯結(jié)構(gòu)潮酒,安全及初始化配置管理。
1.3 SQL基礎(chǔ)應(yīng)用
1.3.1 SQL分類應(yīng)用
DDL 審核
DCL 審核
DML 審核
DQL 分析和優(yōu)化
1.3.2元數(shù)據(jù)獲取
show
information_schema.tables
resume skill:熟悉常用DDL.DCL.DML等SQL語句多規(guī)范及應(yīng)用邪蛔。
熟悉高級(jí)SQL開發(fā),存儲(chǔ)過程急黎,函數(shù),觸發(fā)器事件侧到,游標(biāo)等勃教。
working:配合開發(fā)進(jìn)行schema設(shè)計(jì)及開發(fā),并負(fù)責(zé)日常SQL審核及優(yōu)化匠抗。
1.4索引及執(zhí)行計(jì)劃
1.4.1 B樹等查找算法故源。
1.4.2 輔助索引和聚集索引
1.4.3索引高度
1.4.4索引管理
1.4.5不走索引等原因
1.4.6索引創(chuàng)建原則
1.4.7執(zhí)行計(jì)劃等分析
resume skill:熟悉Btree查找算法,secondary和聚集索引汞贸、索引高度有深入理解绳军。
working 負(fù)責(zé)MySQL數(shù)據(jù)庫(kù)slowlog收集及分析,進(jìn)行語句索引優(yōu)化矢腻。
1.5 存儲(chǔ)引擎??????????
1.5.1 InnoDB核心特性
事務(wù)
行級(jí)鎖
熱備
MVCC
ACSR
主從
1.5.2 ACID
1.5.3 redo,undo
1.5.4 隔離級(jí)別
臟讀删铃,幻讀,不可重復(fù)讀踏堡。
1.5.5 鎖:
record
GAP
next
skill:熟悉indoDB核心原理,對(duì)事務(wù)咒劲、ACID顷蟆、事務(wù)日志,redo腐魂、undo帐偎、隔離級(jí)別、各類鎖機(jī)制有深入研究蛔屹。
working:鎖削樊、內(nèi)存等各指標(biāo)監(jiān)控及優(yōu)化。
1.6日志管理
1.6.1 binlog
1.6.2 slowlog
skill:熟悉MySQL binlog及slowlog等工具日志應(yīng)用兔毒。
1.7備份恢復(fù)
1.7.1 備份策略設(shè)計(jì)(備份腳本)??????????
1.7.2 mysqldump+binlog備份和數(shù)據(jù)恢復(fù)
--master -data=2,
--single-transaction
-A 全
-B
-R
-E
--triggers
--max-allowed-packet=128M
1.7.3 XBK+binlog備份和數(shù)據(jù)恢復(fù)
備份原理
--apply-log
--redo-only
skill:設(shè)計(jì)和實(shí)現(xiàn)MySQL邏輯(mdp)和物理備份(xpk)策略漫贞。
working:日常檢查備份可用性,定期的恢復(fù)演練,版本遷移升級(jí)育叁。??????????
1.8主從復(fù)制
1.8.1主從前提
1.8.2主從原理
1.8.3主從狀態(tài)監(jiān)控(show slave status\G)??????????
1.8.4主從的故障監(jiān)控和分析??????????
1.8.5主從延時(shí)??????????
1.8.6主從復(fù)制架構(gòu)的演變
1.8.7延時(shí)從庫(kù)
1.8.8過濾復(fù)制
1.8.9 GTID
1.8.10 半同步迅脐,無增強(qiáng)半同步,無損復(fù)制
skill:熟悉MySQLReplication原理豪嗽,故障監(jiān)控谴蔑、主從延時(shí)分析豌骏,架構(gòu)演變
working:主從復(fù)制架構(gòu)的設(shè)計(jì)、實(shí)施隐锭、故障監(jiān)控及延時(shí)分析及處理窃躲。
1.9MHA高可用架構(gòu)及讀寫分離
1.9.1 MHA架構(gòu)規(guī)劃及實(shí)現(xiàn)
1.9.2MHA Failover原理
1.9.3 VIP應(yīng)用透明,send_report故障通知,bingo_server數(shù)據(jù)補(bǔ)償
1.9.4修復(fù)故障集群
1.9.5配合Atlas實(shí)現(xiàn)讀寫分離
skill:熟悉MHA高可用架構(gòu)的設(shè)計(jì)與實(shí)現(xiàn),配合Atlas實(shí)現(xiàn)讀寫分離
熟悉MHA高可用架構(gòu)的設(shè)計(jì)與實(shí)現(xiàn),配合ProxySQL實(shí)現(xiàn)讀寫分離
熟悉PXC高可用架構(gòu)的設(shè)計(jì)與實(shí)現(xiàn),配合Mycat實(shí)現(xiàn)讀寫分離
熟悉MGC高可用架構(gòu)的設(shè)計(jì)與實(shí)現(xiàn),配合Maxscale實(shí)現(xiàn)讀寫分離
working:負(fù)責(zé)日常監(jiān)控故障處理及主從延遲解決
1.10 Mycat分布式架構(gòu)
1.10.1 Mycat架構(gòu)規(guī)劃設(shè)計(jì)及實(shí)現(xiàn)
1.10.2 Mycat高可用及讀寫分離
1.10.3 Mycat實(shí)現(xiàn)分布式架構(gòu)
熟悉MHA配合Mycat實(shí)現(xiàn)分布式高可用架構(gòu)
1.11優(yōu)化
1.11.1參數(shù)
1.11.2 索引優(yōu)化
1.11.3鎖監(jiān)控及優(yōu)化
1.11.4主從優(yōu)化
skill:熟悉MySQL核心參數(shù)優(yōu)化
2.Redis
2.1部署管理
2.2安全管理
2.3持久化
2.4數(shù)據(jù)類型應(yīng)用場(chǎng)景
2.5sentinel高可用
2.6redis cluster
幾個(gè)重點(diǎn)概念
skill:熟悉Redis安全遠(yuǎn)程管理钦睡、RDB和AOF持久化機(jī)制蒂窒,5種基礎(chǔ)類型應(yīng)用
熟悉Redis sentinel高可用架構(gòu)及Redis Cluster(Codis)分布式分片架構(gòu)
3.MongoDB
3.1 MongoDB 用戶安全管理
3.2 MongoDB CRUD(增刪改查)
3.3 MongoDB 復(fù)制集管理
3.4 MongoDB sharding cluster
3.5 MongoDB備份恢復(fù)及遷移
skill:熟悉MongoDB基礎(chǔ)管理,用戶安全保證,CRUD等
熟悉MongoDB Replication及MongoDB Sharding Cluster的規(guī)劃及實(shí)施
熟悉MongoDB備份恢復(fù)及架構(gòu)遷移
4.Oracle Pg MSSQL
5.PT相關(guān)的工具
pt-query-digest
pt-osc
pt和主從一致性有關(guān)的工具
pt 索引相關(guān)的