注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)理論DBA實(shí)戰(zhàn)手記

DBA實(shí)戰(zhàn)手記

DBA實(shí)戰(zhàn)手記

定 價(jià):¥169.00

作 者: 薛曉剛 等
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787111757665 出版時(shí)間: 2024-07-01 包裝: 平裝-膠訂
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書(shū)是一本指導(dǎo)DBA進(jìn)行數(shù)據(jù)庫(kù)開(kāi)發(fā)和運(yùn)維的實(shí)用手冊(cè),本書(shū)共9章,包括漫談數(shù)據(jù)庫(kù)、如何提升數(shù)據(jù)庫(kù)性能、如何運(yùn)維好數(shù)據(jù)庫(kù)、如何進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)、如何做好數(shù)據(jù)庫(kù)之間的數(shù)據(jù)同步、認(rèn)識(shí)HTAP技術(shù)、認(rèn)識(shí)數(shù)據(jù)庫(kù)的功能原理、認(rèn)識(shí)數(shù)據(jù)庫(kù)中的數(shù)學(xué)(邏輯與算法),以及DBA的日常:數(shù)據(jù)庫(kù)管理及開(kāi)發(fā)的最佳實(shí)踐。另有附錄DBA雜談。本書(shū)內(nèi)容是資深DBA多年實(shí)踐經(jīng)驗(yàn)的歸納總結(jié),涵蓋DBA日常工作中的主要方面,通過(guò)剖析眾多的真實(shí)案例,并解讀原理、分享技巧、提供思路,內(nèi)容具備較強(qiáng)的啟發(fā)性和指導(dǎo)性。本書(shū)的受眾包括但不限于想要了解如何提升數(shù)據(jù)庫(kù)性能的應(yīng)用開(kāi)發(fā)人員、DBA、業(yè)務(wù)架構(gòu)師、IT架構(gòu)師、數(shù)據(jù)架構(gòu)師、數(shù)據(jù)分析師、系統(tǒng)架構(gòu)師、解決方案架構(gòu)師和企業(yè)高級(jí)管理人員。

作者簡(jiǎn)介

  薛曉剛,現(xiàn)任歐冶云商股份有限公司數(shù)據(jù)庫(kù)首席師,曾服務(wù)于政府、公安、交通、安防、金融、支付等行業(yè)。擁有Oracle、MySQL、PostgreSQL、TiDB、OceanBase、達(dá)夢(mèng)等數(shù)據(jù)庫(kù)認(rèn)證,是Oracle ACE-Pro ( Database )、PostgreSQL ACE Partner、騰訊云TVP、阿里云MVP、TiDB MVA、墨天輪MVP;Oracle OCP認(rèn)證講師,MySQL OCP認(rèn)證講師;ITPUB論壇內(nèi)存數(shù)據(jù)庫(kù)版主、核心專(zhuān)家、金牌顧問(wèn)。ITPUB培訓(xùn)專(zhuān)家百人團(tuán)成員,國(guó)內(nèi)數(shù)據(jù)庫(kù)風(fēng)云百人團(tuán)成員,OceanBase數(shù)據(jù)庫(kù)觀察團(tuán)團(tuán)長(zhǎng),TiDB布道師、布道師組委會(huì)會(huì)員。中國(guó)信息通信研究院創(chuàng)新實(shí)驗(yàn)室成員,開(kāi)放原子開(kāi)源基金會(huì)OpenTenBase工委會(huì)委員,機(jī)械工業(yè)出版社專(zhuān)家委員會(huì)委員。王明杰,德國(guó)布倫瑞克工業(yè)大學(xué)工學(xué)博士,現(xiàn)任職于歐冶云商股份有限公司,擔(dān)任物聯(lián)網(wǎng)技術(shù)一級(jí)首席,致力于物聯(lián)感知、機(jī)器視覺(jué)、智能自動(dòng)化等新技術(shù)在鋼鐵行業(yè)供應(yīng)鏈體系中的應(yīng)用融合。負(fù)責(zé)編寫(xiě)本書(shū)物聯(lián)網(wǎng)場(chǎng)景及時(shí)序數(shù)據(jù)庫(kù)的相關(guān)內(nèi)容。宋希,波爾多大學(xué)數(shù)學(xué)系博士,現(xiàn)任職于歐冶云商股份有限公司,資深算法工程師,主持搭建綜合平臺(tái)智能推薦系統(tǒng),參與需求預(yù)測(cè)、用戶畫(huà)像、在線交易壓力測(cè)試等多個(gè)項(xiàng)目,獲得多項(xiàng)專(zhuān)利。負(fù)責(zé)編寫(xiě)本書(shū)的動(dòng)態(tài)規(guī)劃的相關(guān)內(nèi)容。李歡,現(xiàn)任職于字節(jié)跳動(dòng),作為移動(dòng)端音視頻開(kāi)發(fā)工程師負(fù)責(zé)抖音直播連線架構(gòu)設(shè)計(jì),優(yōu)化抖音音視頻用戶體驗(yàn),提升直播連線的性能。負(fù)責(zé)本書(shū)移動(dòng)端數(shù)據(jù)庫(kù)部分相關(guān)內(nèi)容的編寫(xiě)。

圖書(shū)目錄

目錄
序言1
序言2
序言3
前言
第1章  漫談數(shù)據(jù)庫(kù)1
1.1  什么是數(shù)據(jù)庫(kù)2
1.2  數(shù)據(jù)庫(kù)發(fā)展史2
1.2.1  國(guó)外數(shù)據(jù)庫(kù)的歷史2
1.2.2  國(guó)內(nèi)數(shù)據(jù)庫(kù)的歷史4
1.3  數(shù)據(jù)庫(kù)的主要分類(lèi)6
1.3.1  關(guān)系數(shù)據(jù)庫(kù):傳統(tǒng)交易數(shù)據(jù)庫(kù)6
1.3.2  鍵值數(shù)據(jù)庫(kù):基于KV鍵值對(duì)的內(nèi)存數(shù)據(jù)庫(kù)7
1.3.3  列式數(shù)據(jù)庫(kù):列式存儲(chǔ)的分析型數(shù)據(jù)庫(kù)9
1.3.4  文檔型數(shù)據(jù)庫(kù):松散型數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)庫(kù)10
1.3.5  圖數(shù)據(jù)庫(kù):用于社交圖譜的數(shù)據(jù)庫(kù)11
1.3.6  時(shí)序數(shù)據(jù)庫(kù):適用于物聯(lián)網(wǎng)場(chǎng)景的數(shù)據(jù)庫(kù)12
1.3.7  搜索引擎數(shù)據(jù)庫(kù):全文索引的數(shù)據(jù)庫(kù)14
1.3.8  多模數(shù)據(jù)庫(kù):具有多種數(shù)據(jù)庫(kù)模式的融合數(shù)據(jù)庫(kù)17
1.3.9  最容易忽視的數(shù)據(jù)庫(kù)—移動(dòng)端數(shù)據(jù)庫(kù)19
1.4  數(shù)據(jù)庫(kù)應(yīng)用的發(fā)展趨勢(shì)22
1.4.1  國(guó)外數(shù)據(jù)庫(kù)應(yīng)用發(fā)展趨勢(shì)22
1.4.2  國(guó)內(nèi)數(shù)據(jù)庫(kù)應(yīng)用發(fā)展趨勢(shì)24
1.5  數(shù)據(jù)庫(kù)與新興數(shù)字技術(shù)30
1.5.1  數(shù)據(jù)庫(kù)與大數(shù)據(jù)技術(shù)30
1.5.2  數(shù)據(jù)庫(kù)的延伸:區(qū)塊鏈、物聯(lián)網(wǎng)32
1.6  與數(shù)據(jù)庫(kù)長(zhǎng)相廝守的DBA33
1.6.1  DBA的定義與內(nèi)涵33
1.6.2  DBA的工作職責(zé)34
1.6.3  DBA需要具備的能力35
1.6.4  DBA的價(jià)值35
1.6.5  DBA是可以做一輩子的職業(yè)36
第2章  如何提升數(shù)據(jù)庫(kù)性能38
2.1  通過(guò)索引提升性能39
2.1.1  索引的概念及原理39
2.1.2  索引的種類(lèi)44
2.1.3  規(guī)避索引使用的誤區(qū)68
2.1.4  通過(guò)索引實(shí)現(xiàn)海量數(shù)據(jù)中的高效查詢(xún)70
2.1.5  自動(dòng)化索引:數(shù)據(jù)庫(kù)自治的趨勢(shì)71
2.2  通過(guò)SQL優(yōu)化提升性能78
2.2.1  SQL優(yōu)化實(shí)現(xiàn)高速執(zhí)行任務(wù)79
2.2.2  慎用分頁(yè)有效提升性能86
2.2.3  從認(rèn)知上杜絕低效SQL89
2.3  避免數(shù)據(jù)庫(kù)對(duì)象設(shè)計(jì)失誤91
2.3.1  避免不必要的多表關(guān)聯(lián)導(dǎo)致的低效查詢(xún)91
2.3.2  避免動(dòng)態(tài)計(jì)算結(jié)果沒(méi)有單獨(dú)存儲(chǔ)導(dǎo)致的低效查詢(xún)93
2.3.3  避免沒(méi)有明確需求查詢(xún)條件導(dǎo)致的低效查詢(xún)97
2.3.4  避免過(guò)度分表98
2.4  從識(shí)別需求的合理性提升性能101
2.4.1  拒絕無(wú)效需求101
2.4.2  正確理解開(kāi)發(fā)需求104
2.4.3  拒絕不合理的需求106
2.4.4  引導(dǎo)業(yè)務(wù)改善需求107
2.5  減少I(mǎi)O操作提升數(shù)據(jù)庫(kù)性能108
2.5.1  正確認(rèn)識(shí)數(shù)據(jù)庫(kù)的性能108
2.5.2  減少I(mǎi)O交互—批量寫(xiě)入數(shù)據(jù)(MySQL)110
2.5.3  減少I(mǎi)O交互—批量寫(xiě)入數(shù)據(jù)(Oracle)122
2.5.4  減少I(mǎi)O交互—批量寫(xiě)入數(shù)據(jù)(PostgreSQL)123
2.5.5  精簡(jiǎn)架構(gòu)127
第3章  如何運(yùn)維好數(shù)據(jù)庫(kù)130
3.1  運(yùn)維好數(shù)據(jù)庫(kù)的關(guān)鍵:處理故障131
3.1.1  常見(jiàn)的數(shù)據(jù)庫(kù)故障類(lèi)型131
3.1.2  數(shù)據(jù)庫(kù)故障的危害132
3.2  分析處理數(shù)據(jù)庫(kù)故障的關(guān)鍵點(diǎn)133
3.2.1  分析數(shù)據(jù)庫(kù)故障的主要原因—SQL133
3.2.2  分析SQL的主要問(wèn)題—處理速度慢134
3.2.3  分析數(shù)據(jù)庫(kù)參數(shù)對(duì)數(shù)據(jù)庫(kù)的影響134
3.2.4  分析硬件短板帶來(lái)的問(wèn)題—IO吞吐能力與CPU計(jì)算能力135
3.3  數(shù)據(jù)庫(kù)故障處理的典型案例分析138
3.3.1  一次Elasticsearch誤刪除的故障分析139
3.3.2  一次配置文件丟失導(dǎo)致的MySQL數(shù)據(jù)庫(kù)故障分析141
3.3.3  一次In-Memory丟失引起的故障分析146
3.3.4  一次疑似分區(qū)查詢(xún)異常的故障分析150
3.3.5  一次數(shù)據(jù)庫(kù)歸檔導(dǎo)致的故障分析159
3.3.6  一次數(shù)據(jù)庫(kù)binlog寫(xiě)入失敗的故障分析163
3.3.7  一次兩表關(guān)聯(lián)導(dǎo)致的故障分析165
3.3.8  數(shù)據(jù)庫(kù)連接數(shù)與連接復(fù)用不當(dāng)?shù)墓收戏治?66
3.3.9  一次數(shù)據(jù)庫(kù)CPU使用率100%的故障分析168
3.3.10  一次數(shù)據(jù)庫(kù)索引不當(dāng)引起的故障分析169
3.3.11  一次數(shù)據(jù)庫(kù)主從延遲過(guò)大的故障分析172
3.3.12  一次數(shù)據(jù)庫(kù)主從不一致的故障分析174
3.3.13  一次Redis數(shù)據(jù)庫(kù)無(wú)法啟動(dòng)的故障分析182
3.3.14  一次MySQL數(shù)據(jù)庫(kù)數(shù)據(jù)類(lèi)型不恰當(dāng)導(dǎo)致的故障183
3.3.15  一次數(shù)據(jù)庫(kù)全表查詢(xún)的優(yōu)化187
第4章  如何進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)197
4.1  數(shù)據(jù)庫(kù)都有哪些架構(gòu)198
4.1.1  集中式架構(gòu)198
4.1.2  分布式架構(gòu)200
4.1.3  數(shù)據(jù)庫(kù)內(nèi)部的體系架構(gòu)201
4.1.4 “煙囪”式的數(shù)據(jù)庫(kù)架構(gòu)201
4.1.5  獨(dú)立業(yè)務(wù)線的數(shù)據(jù)庫(kù)架構(gòu)202
4.2  根據(jù)實(shí)際場(chǎng)景選擇數(shù)據(jù)庫(kù)架構(gòu)203
4.3  五個(gè)維度談數(shù)據(jù)庫(kù)選型203
4.3.1  從業(yè)務(wù)場(chǎng)景特征維度204
4.3.2  從數(shù)據(jù)規(guī)模大小維度204
4.3.3  從用戶自身開(kāi)發(fā)團(tuán)隊(duì)能力維度205
4.3.4  從用戶自身運(yùn)維團(tuán)隊(duì)能力維度205
4.3.5  從公司管理能力維度206
4.4  數(shù)據(jù)庫(kù)拆分的利與弊206
4.4.1  數(shù)據(jù)庫(kù)拆分的背景207
4.4.2  數(shù)據(jù)庫(kù)拆分的三大問(wèn)題:一致性、數(shù)據(jù)關(guān)聯(lián)、數(shù)據(jù)同步208
4.4.3  分表帶來(lái)的問(wèn)題:一致性、聚合、排序、擴(kuò)縮容208
4.5  如何看待數(shù)據(jù)庫(kù)的合并210
4.5.1  為何要做數(shù)據(jù)庫(kù)合并210
4.5.2  數(shù)據(jù)庫(kù)合并的意義:降成本、提升穩(wěn)定性211
4.5.3  數(shù)據(jù)庫(kù)合并帶來(lái)的問(wèn)題:雞蛋放在一個(gè)籃子里211
4.5.4  數(shù)據(jù)庫(kù)合并的前提:高質(zhì)量SQL、硬件的進(jìn)步、穩(wěn)定的基礎(chǔ)環(huán)境212
4.6  CAP理論與分布式數(shù)據(jù)庫(kù)212
4.6.1  CAP理論概述213
4.6.2  CAP理論的延展213
4.6.3  分庫(kù)分表不是分布式數(shù)據(jù)庫(kù)214
4.7  如何看待數(shù)據(jù)庫(kù)與中間件215
4.7.1  數(shù)據(jù)庫(kù)與中間件:上下游的“難兄難弟”215
4.7.2  中間件內(nèi)存溢出的原因:源頭還是數(shù)據(jù)庫(kù)215
4.7.3  適當(dāng)減少數(shù)據(jù)庫(kù)與中間件的數(shù)量:避免不必要的故障節(jié)點(diǎn)216
第5章  如何做好數(shù)據(jù)庫(kù)之間的數(shù)據(jù)同步217
5.1  數(shù)據(jù)同步的作用218
5.1.1  實(shí)現(xiàn)數(shù)據(jù)傳輸218
5.1.2  實(shí)現(xiàn)數(shù)據(jù)匯聚218
5.1.3  實(shí)現(xiàn)數(shù)據(jù)遷移219
5.2  數(shù)據(jù)庫(kù)同步的分類(lèi)219
5.2.1  同構(gòu)數(shù)據(jù)庫(kù)的同步219
5.2.2  異構(gòu)數(shù)據(jù)庫(kù)的同步219
5.2.3  數(shù)據(jù)庫(kù)到消息隊(duì)列的同步219
5.2.4  數(shù)據(jù)庫(kù)到Hadoop的數(shù)據(jù)同步219
5.3  同構(gòu)數(shù)據(jù)庫(kù)數(shù)據(jù)同步的示例220
5.3.1  使用dblink實(shí)現(xiàn)Oracle數(shù)據(jù)庫(kù)之間的數(shù)據(jù)同步220
5.3.2  使用物化視圖實(shí)現(xiàn)遠(yuǎn)程O(píng)racle數(shù)據(jù)庫(kù)之間的數(shù)據(jù)同步226
5.3.3  使用插件實(shí)現(xiàn)MySQL數(shù)據(jù)庫(kù)之間的數(shù)據(jù)同步231
5.3.4  利用數(shù)據(jù)同步實(shí)現(xiàn)MySQL的版本升級(jí)234
5.3.5  采用多源復(fù)制的功能實(shí)現(xiàn)MySQL數(shù)據(jù)庫(kù)之間的數(shù)據(jù)同步239
5.3.6  采用主從模式實(shí)現(xiàn)PostgreSQL主從數(shù)據(jù)同步242
5.4  異構(gòu)數(shù)據(jù)庫(kù)同步的實(shí)例—基于OGG248
5.4.1  CDC簡(jiǎn)介248
5.4.2  OGG概述249
5.4.3  OGG微服務(wù)版的安裝部署249
5.4.4  使用OGG for Oracle實(shí)現(xiàn)Oracle數(shù)據(jù)庫(kù)之間的數(shù)據(jù)同步251
5.4.5  使用OGG for MySQL實(shí)現(xiàn)MySQL與異構(gòu)數(shù)據(jù)庫(kù)的同步279
5.4.6  使用OGG for BigData實(shí)現(xiàn)大數(shù)據(jù)組件與異構(gòu)數(shù)據(jù)庫(kù)的數(shù)據(jù)同步284
第6章  認(rèn)識(shí)HTAP技術(shù)294
6.1  HTAP的概念及其價(jià)值295
6.1.1  HTAP:混合事物/分析處理295
6.1.2  HTAP的價(jià)值295
6.2  HTAP的幾種實(shí)現(xiàn)方式297
6.2.1  垂直方向的實(shí)現(xiàn):以O(shè)racle數(shù)據(jù)庫(kù)為例297
6.2.2  水平方向的實(shí)現(xiàn):以MySQL、TiDB數(shù)據(jù)庫(kù)為例298
6.2.3  其他類(lèi)型數(shù)據(jù)庫(kù)的實(shí)現(xiàn)方式298
第7章  認(rèn)識(shí)數(shù)據(jù)庫(kù)的功能原理300
7.1  優(yōu)化器—基于統(tǒng)計(jì)學(xué)原理301
7.2  數(shù)據(jù)庫(kù)的查詢(xún)—火山模型316
7.3  數(shù)據(jù)庫(kù)AI—向量化319
7.4  編譯執(zhí)行323
第8章  認(rèn)識(shí)數(shù)據(jù)庫(kù)中的數(shù)學(xué)(邏輯與算法)326
8.1  數(shù)據(jù)庫(kù)中的典型邏輯與算法327
8.1.1  從斐波那契數(shù)列到數(shù)據(jù)分析327
8.1.2  增加數(shù)據(jù)維度處理—減少關(guān)聯(lián)332
8.1.3  多表關(guān)聯(lián)算法—一對(duì)多與多對(duì)多336
8.1.4  排除處理算法—笛卡兒積341
8.1.5  函數(shù)算法—對(duì)SQL的影響348
8.2  動(dòng)態(tài)規(guī)劃法在數(shù)據(jù)庫(kù)中的應(yīng)用351
8.2.1  動(dòng)態(tài)規(guī)劃原理1:爬樓梯351
8.2.2  動(dòng)態(tài)規(guī)劃原理2:背包問(wèn)題355
8.2.3  動(dòng)態(tài)規(guī)劃的五部曲361
8.3  數(shù)據(jù)庫(kù)開(kāi)發(fā)中的邏輯思維362
8.3.1  元數(shù)據(jù)的空與非空362
8.3.2  優(yōu)化器處理極值和極限:加速查詢(xún)速度369
8.3.3  并發(fā)處理熱點(diǎn)的邏輯:避免鎖371
8.3.4  減庫(kù)存的邏輯:從設(shè)計(jì)出發(fā)防止超賣(mài)373
第9章  DBA的日常:數(shù)據(jù)庫(kù)管理及開(kāi)發(fā)的最佳實(shí)踐375
9.1  七個(gè)針對(duì)數(shù)據(jù)庫(kù)特性的最佳實(shí)踐376
9.1.1  Oracle的DML重定向376
9.1.2  Oracle的資源隔離381
9.1.3  MySQL的延遲復(fù)制—挽救誤刪除389
9.1.4  PostgreSQL的延遲復(fù)制395
9.1.5  數(shù)據(jù)庫(kù)對(duì)于磁盤(pán)IO吞吐的要求402
9.2  面向執(zhí)行器和優(yōu)化器的最佳實(shí)踐403
9.2.1  主流數(shù)據(jù)庫(kù)的事務(wù)異常處理機(jī)制對(duì)比(MySQL、PostgreSQL、Oracle)403
9.2.2  MySQL和達(dá)夢(mèng)兩個(gè)數(shù)據(jù)庫(kù)優(yōu)化器的對(duì)比406
9.2.3  SQL語(yǔ)句的解析過(guò)程分析407
9.2.4  優(yōu)化器的多表關(guān)聯(lián)411
9.2.5  SQL使用in進(jìn)行子查詢(xún)412
9.2.6  數(shù)據(jù)歸檔和數(shù)據(jù)遷移419
9.3  數(shù)據(jù)庫(kù)的復(fù)制(克?。┡c高可用受控切換的最佳實(shí)踐424
9.3.1  Oracle的PDB數(shù)據(jù)庫(kù)克隆425
9.3.2  MySQL克隆的關(guān)鍵點(diǎn)428
9.3.3  MySQL的MGR架構(gòu)以及受控切換431
9.3.4  PostgreSQL的高可用切換434
9.3.5  Redis的高可用切換440
9.4  三個(gè)SQL編寫(xiě)的最佳實(shí)踐445
9.4.1  關(guān)于MyBatis開(kāi)發(fā)框架使用綁定變量的實(shí)踐445
9.4.2  使用exists的SQL語(yǔ)句的改寫(xiě)451
9.4.3  設(shè)計(jì)上出發(fā)減少SQL的標(biāo)量子查詢(xún)458
9.5  時(shí)序數(shù)據(jù)庫(kù)使用的最佳實(shí)踐463
9.5.1  時(shí)序數(shù)據(jù)庫(kù)的數(shù)據(jù)庫(kù)表設(shè)計(jì)463
9.5.2  時(shí)序數(shù)據(jù)庫(kù)的數(shù)據(jù)分析466
附錄  DBA雜談468

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)