注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機(jī)/網(wǎng)絡(luò)數(shù)據(jù)庫Oracle數(shù)據(jù)庫存儲管理與性能優(yōu)化

Oracle數(shù)據(jù)庫存儲管理與性能優(yōu)化

Oracle數(shù)據(jù)庫存儲管理與性能優(yōu)化

定 價:¥89.00

作 者: 甘長春,張建軍 著
出版社: 中國鐵道出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787113270339 出版時間: 2020-09-01 包裝: 平裝
開本: 16開 頁數(shù): 428 字?jǐn)?shù):  

內(nèi)容簡介

  本書以O(shè)racle 11g為藍(lán)本,在某些實踐應(yīng)用中也講到了12c版本,全面系統(tǒng)地介紹了大型對象關(guān)系型數(shù)據(jù)庫服務(wù)器Oracle性能優(yōu)化方面的大部分內(nèi)容,包括看懂SQL執(zhí)行計劃、Oracle存儲管理、Oracle內(nèi)存管理、Oracle性能指標(biāo)及追蹤、Oracle性能報告、Oracle實戰(zhàn)案例等內(nèi)容

作者簡介

  甘長春老師畢業(yè)于北京交通大學(xué)電氣工程及自動化專業(yè),目前供職于中國鐵路北京局集團(tuán)公司。自從參加工作以來,先后參與了多個鐵路應(yīng)用項目的開發(fā)工作,同時也與多家IT企業(yè)合作研發(fā)數(shù)據(jù)庫架構(gòu)設(shè)計及開發(fā)項目。通過這些項目的開發(fā),積累了一定的實踐經(jīng)驗,并從中獲取了一些數(shù)據(jù)庫開發(fā)運維的心得。 除此之外,自2014年起,甘長春老師一直在天津大學(xué)軟件學(xué)院從事兼職教學(xué)工作,所授課程為Oracle和PHP,教學(xué)經(jīng)驗的積累也讓他更清晰地明白了如何把一個知識點講解更清楚,力求引領(lǐng)讀者盡快掌握書中所講內(nèi)容。 張建軍,畢業(yè)于天津師范大學(xué)計算機(jī)科學(xué)與技術(shù)專業(yè) ,現(xiàn)任天津市融創(chuàng)軟通科技股份有限公司副總經(jīng)理,教育培訓(xùn)事業(yè)部技術(shù)總監(jiān) ,高級工程師;Oracle認(rèn)證專家,RedHad(紅帽)認(rèn)證專家, 截至目前有近20年的軟件開發(fā)、項目管理及教育培訓(xùn)工作經(jīng)驗。

圖書目錄

第1章 Oracle體系結(jié)構(gòu)概述 1
1.1 Oracle數(shù)據(jù)庫進(jìn)程結(jié)構(gòu) 2
1.2 Oracle數(shù)據(jù)庫邏輯結(jié)構(gòu) 3
1.3 Oracle數(shù)據(jù)庫物理結(jié)構(gòu) 5
1.4 Oracle數(shù)據(jù)庫邏輯結(jié)構(gòu)與物理結(jié)構(gòu)的耦合關(guān)系 6
1.5 本章小結(jié) 8
第2章 SQL執(zhí)行計劃 9
2.1 看懂SQL執(zhí)行計劃前需要掌握的概念 9
2.2 SQL*Plus的執(zhí)行計劃設(shè)置 12
2.2.1 設(shè)置Autotrace(自動跟蹤)參數(shù) 12
2.2.2 在SQL*Plus中顯示SQL執(zhí)行計劃 13
2.3 使用TOAD、SQL Developer工具 21
2.3.1 TOAD分析工具 21
2.3.2 SQL Developer分析工具 22
2.4 SQL解析 24
2.4.1 Oracle SQL的硬解析和軟解析 27
2.4.2 動態(tài)分析采樣 28
2.5 關(guān)于RBO與CBO 28
2.6 關(guān)于執(zhí)行計劃中的索引訪問方法 30
2.6.1 索引唯一掃描(INDEX UNIQUE SCAN) 31
2.6.2 索引范圍掃描(INDEX RANGE SCAN) 32
2.6.3 索引跳躍掃描(INDEX SKIP SCAN) 33
2.6.4 索引快速全掃描(INDEX FAST FULL SCAN) 34
2.7 通過DBMS_XPLAN包查看以往SQL的執(zhí)行計劃 35
2.8 常用Hints(提示) 36
2.8.1 與優(yōu)化器模式相關(guān)的Hint 37
2.8.2 與表訪問相關(guān)的Hint 40
2.8.3 與索引訪問相關(guān)的Hint 40
2.8.4 與表連接順序相關(guān)的Hint 47
2.9 實踐案例:位圖索引對性能的影響 48
2.10 實踐案例:分區(qū)索引對性能的影響 52
2.10.1 關(guān)于分區(qū)索引的說明 52
2.10.2 分區(qū)索引實驗 54
2.11 如何更好地判斷SQL效率 71
2.12 本章小結(jié) 72
第3章 Oracle數(shù)據(jù)庫存儲結(jié)構(gòu) 73
3.1 邏輯存儲結(jié)構(gòu) 73
3.1.1 塊(Block) 73
3.1.2 區(qū)(Extent) 74
3.1.3 段(Segment) 75
3.1.4 表空間(Tablespace) 75
3.1.5 4種邏輯存儲結(jié)構(gòu)的關(guān)系 76
3.2 Oracle物理存儲結(jié)構(gòu) 76
3.3 本章小結(jié) 77
第4章 Oracle表空間 78
4.1 表空間管理 78
4.1.1 表空間(TABLESPACE)的類型 79
4.1.2 表空間(TABLESPACE)的管理 80
4.1.3 表空間(TABLESPACE)的創(chuàng)建 82
4.2 表空間的查看 88
4.2.1 表空間固定信息的查看 89
4.2.2 表空間動態(tài)信息的查看 90
4.3 表空間管理準(zhǔn)則 91
4.4 創(chuàng)建表空間應(yīng)遵循的一般原則 92
4.5 表空間創(chuàng)建模板及其刪除應(yīng)用場景分析 94
4.5.1 表空間創(chuàng)建模板語句 95
4.5.2 表空間刪除的4種方式及其應(yīng)用場景分析 96
4.6 關(guān)于表空間創(chuàng)建的數(shù)據(jù)文件DATAFILE參數(shù) 98
4.6.1 SIZE子句 99
4.6.2 EXTENT分區(qū)分配方案 99
4.6.3 關(guān)于REUSE(重復(fù)使用)的說明 99
4.7 關(guān)于表空間參數(shù)的其他說明 101
1.段Segment管理策略 101
2.Table/Segment/Extent/Block之間的關(guān)系 101
3.TABLESPACE和DATAFILE之間的關(guān)系 101
4.8 回收表空間中浪費的空間 101
4.8.1 查看表空間碎片率 102
4.8.2 得到表空間的DDL(創(chuàng)建)語句 103
4.8.3 表空間屬性PCTINCREASE(百分比)參數(shù)的修改 105
4.8.4 回收表空間碎片 105
4.8.5 Oracle移動索引到其他表空間 112
4.9 TABLE的碎片回收 113
4.9.1 與回收TABLE碎片有關(guān)的兩個存儲過程 113
4.9.2 表碎片回收處理 118
4.10 Oracle 11g undo_retention(撤銷保留時間) 120
4.10.1 關(guān)于undo 的參數(shù) 121
4.10.2 undo_retention(撤銷保留時間)狀態(tài)說明及參數(shù)調(diào)整 122
4.11 本章小結(jié) 123
第5章 自動存儲管理(ASM) 125
5.1 ASM概述 125
5.1.1 ASM冗余 125
5.1.2 ASM進(jìn)程 126
5.1.3 ASM實例和數(shù)據(jù)庫實例對應(yīng)關(guān)系 127
5.1.4 Cluster(集群) ASM 架構(gòu) 127
5.2 ASM實例搭建 128
5.2.1 環(huán)境介紹 128
5.2.2 創(chuàng)建裸設(shè)備以及創(chuàng)建ASM磁盤組 129
5.2.3 安裝Oracle 網(wǎng)絡(luò)基礎(chǔ)架構(gòu)win64_11gR2_grid組件 133
5.2.4 后續(xù)處理 134
5.3 ASM實例管理 136
5.3.1 查看可用分區(qū) 137
5.3.2 加入ASM磁盤 138
5.3.3 開啟CSS服務(wù) 139
5.3.4 新建ASM DiskGroup給數(shù)據(jù)庫使用 139
5.4 磁盤組的管理 143
5.4.1 磁盤組的創(chuàng)建與刪除 144
5.4.2 ASM磁盤的添加和刪除 147
5.4.3 磁盤組信息的查詢 149
5.4.4 磁盤組的重新平衡 150
5.4.5 磁盤組的加載和卸載 150
5.4.6 目錄管理 151
5.4.7 別名管理 152
5.5 如何使用ASM磁盤組 153
5.5.1 創(chuàng)建數(shù)據(jù)文件 153
5.5.2 添加重做日志文件 157
5.5.3 創(chuàng)建數(shù)據(jù)庫 159
5.6 本章小結(jié) 159
第6章 Oracle的內(nèi)存結(jié)構(gòu) 160
6.1 Oracle內(nèi)存結(jié)構(gòu) 160
6.1.1 SGA(系統(tǒng)全局區(qū)) 161
6.1.2 PGA(程序全局區(qū)) 163
6.1.3 UGA(用戶全局區(qū)) 165
6.2 SGA組件介紹 165
6.2.1 固定SGA(Fixed SGA) 166
6.2.2 塊緩沖區(qū)(Database Buffer Cache) 166
6.2.3 數(shù)據(jù)高速緩存的工作原理過程 167
6.2.4 重做日志緩沖區(qū)(Redo Log Buffer) 168
6.2.5 共享池(Shared Pool) 169
6.2.6 大池(Large Pool) 170
6.2.7 Java池(Java Pool) 170
6.2.8 流池(Stream Pool) 170
6.3 PGA結(jié)構(gòu) 171
6.3.1 Private SQL Area(私有SQL區(qū)) 171
6.3.2 Work Area(工作區(qū)) 172
6.3.3 Session Memory 173
6.3.4 自動PGA管理 174
6.4 Oracle 11g系統(tǒng)進(jìn)程介紹 175
6.4.1 數(shù)據(jù)庫寫進(jìn)程(DBWn) 177
6.4.2 日志文件寫進(jìn)程(LGWR) 178
6.4.3 檢查點進(jìn)程(CKPT) 179
6.4.4 系統(tǒng)監(jiān)控進(jìn)程(SMON) 180
6.4.5 進(jìn)程監(jiān)控進(jìn)程(PMON) 180
6.4.6 恢復(fù)進(jìn)程(RECO) 180
6.4.7 作業(yè)隊列進(jìn)程(CJQn) 181
6.4.8 歸檔進(jìn)程(ARCn) 181
6.4.9 隊列監(jiān)控進(jìn)程(QMNn) 182
6.4.10 調(diào)度進(jìn)程(Dnnn) 182
6.4.11 內(nèi)存管理進(jìn)程(MMAN) 182
6.4.12 恢復(fù)寫入進(jìn)程 (RVWR) 182
6.4.13 內(nèi)存管理進(jìn)程(MMON) 183
6.4.14 其他后臺進(jìn)程 183
6.5 自動共享內(nèi)存管理(ASMM) 183
6.6 關(guān)于11g與12c內(nèi)存管理 185
6.6.1 Orodo內(nèi)存管理形式 186
6.6.2 11g下的AMM內(nèi)存管理 187
6.7 本章小結(jié) 188
第7章 Oracle的內(nèi)存分析與調(diào)整 189
7.1 Oracle 內(nèi)存工作機(jī)制 189
7.2 內(nèi)存使用情況分析 190
7.2.1 剩余內(nèi)存 190
7.2.2 內(nèi)存擊中率 190
7.3 SQL效率及其他指標(biāo)查看分析 193
7.3.1 檢查占用CPU時間比較長的SQL語句 193
7.3.2 執(zhí)行效率最差的SQL語句 194
7.3.3 識別低效率執(zhí)行的語句 195
7.3.4 V$sqlarea視圖提供的執(zhí)行細(xì)節(jié) 196
7.3.5 查看數(shù)據(jù)庫db_cache_size及各類pool_size值 198
7.4 Oracle內(nèi)存調(diào)整——系統(tǒng)全局區(qū)SGA 199
7.5 Oracle內(nèi)存調(diào)整——共享池(Shared Pool) 201
7.5.1 共享池(Shared Pool)相關(guān)視圖 201
7.5.2 共享池(Shared Pool) 207
7.5.3 庫高速緩存(Library Cache) 208
7.5.4 數(shù)據(jù)緩沖區(qū)(Buffer Cache) 215
7.5.5 重做日志緩沖區(qū)(Redo Log Buffer) 221
7.5.6 大池 222
7.5.7 Java池 222
7.5.8 流池 223
7.6 本章小結(jié) 223
第8章 Oracle動態(tài)性能指標(biāo) 224
8.1 主要與Oracle動態(tài)性能指標(biāo)相關(guān)的基礎(chǔ)概念 224
8.2 從v$sysstat視圖獲取負(fù)載間檔 228
8.2.1 Buffer Cache Hit Ratio(DB緩存命中率) 229
8.2.2 Soft Parse Ratio(軟解析比率) 229
8.2.3 In-Memory Sort Ratio(內(nèi)存排序率) 230
8.2.4 Parse To Execute Ratio(SQL解析執(zhí)行比率) 230
8.2.5 Parse CPU To Total CPU Ratio(CPU花費比率) 230
8.2.6 Parse Time CPU To Parse Time Elapsed(鎖競爭比率) 230
8.3 其他計算統(tǒng)計以衡量負(fù)載方式 231
8.3.1 Blocks Changed For Each Read(每次讀引起的塊改變) 231
8.3.2 Rows For Each Sort(每個排序引發(fā)的排序行量) 232
8.3.3 Oracle獲取當(dāng)前數(shù)據(jù)庫負(fù)載情況信息 232
8.4 本章小結(jié) 234
第9章 Oracle的索引與性能 235
9.1 Oracle數(shù)據(jù)庫索引類型 235
9.1.1 B*tree索引 235
9.1.2 位圖索引(Bitmap Index) 236
9.1.3 位圖連接索引(Bitmap Join Index) 237
9.1.4 基于函數(shù)的索引(Function-Based Index) 237
9.1.5 應(yīng)用域索引(Application Domain Index) 239
9.1.6 Hash索引 242
9.1.7 分區(qū)索引 242
9.2 索引典型操作 243
9.2.1 典型創(chuàng)建操作 243
9.2.2 典型刪除操作 243
9.2.3 典型移動操作 244
9.2.4 得到創(chuàng)建索引的SQL語句 244
9.2.5 查看數(shù)據(jù)庫中的索引及跳過設(shè)置 246
9.2.6 通用索引刪除腳本 246
9.3 有無索引及不同類型索引對查詢效率高低影響實驗 247
9.4 關(guān)于索引的建議 251
9.5 普通表轉(zhuǎn)分區(qū)表實驗及分區(qū)表相關(guān)信息查詢 254
9.5.1 普通表轉(zhuǎn)分區(qū)表實驗環(huán)境搭建 254
9.5.2 普通表轉(zhuǎn)分區(qū)表 255
9.5.3 查看Oracle都有哪些分區(qū)表 258
9.5.4 表分區(qū)查詢 259
9.6 本章小結(jié) 259
第10章 Oracle性能實驗 260
10.1 信息收集、庫加壓處理 260
10.1.1 信息收集處理 260
10.1.2 給數(shù)據(jù)庫加壓處理及瓶頸解決過程 270
10.1.3 存儲過程使用綁定 272
10.1.4 將UPDATE命令加載到共享池并以并行方式執(zhí)行 273
10.1.5 通過并發(fā)給數(shù)據(jù)庫加壓 273
10.1.6 查找SESSION ID及serial# 274
10.1.7 殺掉SESSION ID 275
10.1.8 通過merge命令加壓 275
10.1.9 批量數(shù)據(jù)加壓處理 277
10.2 信息查看跟蹤SQL語句 278
10.2.1 比率相關(guān) 278
10.2.2 等待、鎖及阻塞相關(guān) 286
10.2.3 獲取SQL語句相關(guān) 302
10.2.4 資源消耗相關(guān) 310
10.2.5 游標(biāo)相關(guān) 313
10.3 日常需要記錄的監(jiān)控點以及監(jiān)控語句 315
10.4 關(guān)于Oracle的I/O 318
10.5 實驗結(jié)論 319
10.5.1 調(diào)優(yōu)過程 319
10.5.2 調(diào)優(yōu)前后SPFILE參數(shù)文件對比 323
10.5.3 實驗總結(jié) 326
10.6 本章小結(jié) 326
第11章 AWR報告 327
11.1 AWR報告綜述 327
11.2 什么情況下會用到AWR 332
11.3 如何生成AWR報告 333
11.4 分析AWR報告 336
11.4.1 AWR報告頭 336
11.4.2 Cache Sizes報告 337
11.4.3 Load Profile報告 337
11.4.4 Instance Efficiency Percentages報告 339
11.4.5 Shared Pool Statistics報告 341
11.4.6 Top 5 Timed Foreground Events(前5個嚴(yán)重等待事件)報告 341
11.4.7 SQL ordered by Elapsed Time報告 347
11.4.8 SQL ordered by CPU Time報告 348
11.5 使用腳本自動生成AWR報告 349
11.5.1 查快照snap_ID 349
11.5.2 建立腳本并執(zhí)行 350
11.6 本章小結(jié) 351
第12章 Oracle的ADDM報告 352
12.1 Oracle性能調(diào)優(yōu)綜述 352
12.2 Oracle ADDM報告概述 353
12.2.1 使用addmrpt.sql來創(chuàng)建ADDM報告 353
12.2.2 使用DBMS_ADVISOR程序包來創(chuàng)建ADDM報告 354
12.3 ADDM報告實驗 358
12.3.1 負(fù)荷環(huán)境搭建 358
12.3.2 第1次采集快照并施加負(fù)荷 359
12.3.3 采集第2次快照 359
12.3.4 創(chuàng)建一個優(yōu)化任務(wù)并執(zhí)行 360
12.3.5 查詢建議結(jié)果 361
12.3.6 ADDM報告解釋 361
12.4 本章小結(jié) 365
第13章 Oracle 11g R2 RAC集群部署實驗 367
13.1 總體規(guī)劃 367
13.1.1 部署環(huán)境 367
13.1.2 網(wǎng)絡(luò)配置 368
13.1.3 Oracle軟件組件 368
13.1.4 數(shù)據(jù)庫配置 369
13.1.5 存儲組件 369
13.2 服務(wù)器規(guī)劃 370
13.2.1 通過StartWind 6.0虛擬磁盤 370
13.2.2 劃分Oracle安裝目錄DB(F:)和虛擬內(nèi)存(G:) 370
13.2.3 修改虛擬內(nèi)存(兩個節(jié)點都設(shè)置) 371
13.2.4 修改winrac1和winrac2的hosts文件 372
13.2.5 修改注冊表,禁用媒體感知功能 372
13.3 網(wǎng)絡(luò)規(guī)劃 373
13.3.1 修改網(wǎng)卡名(兩個節(jié)點都設(shè)置) 373
13.3.2 修改網(wǎng)卡優(yōu)先級并配置IP 374
13.3.3 測試兩點的連通性 375
13.4 存儲規(guī)劃 376
13.4.1 規(guī)劃磁盤陣列 376
13.4.2 共享安裝目錄DB(F:)和C盤 377
13.5 安裝Grid軟件前的設(shè)置和檢查 378
13.5.1 服務(wù)器時間同步 378
13.5.2 檢測節(jié)點之間能否相互訪問共享 378
13.5.3 檢查Grid安裝是否符合條件 379
13.6 Grid及數(shù)據(jù)庫軟件的安裝 382
13.6.1 安裝win64 grid 11.2.0.4.0集群管理軟件 383
13.6.2 Clusterware安裝校驗(檢查CRS資源狀態(tài)) 387
13.6.3 安裝DATABASE軟件 388
13.6.4 創(chuàng)建ASM磁盤組 391
13.6.5 DBCA建立數(shù)據(jù)庫 394
13.7 Oracle RAC集群管理常用操作 398
13.8 本章小結(jié) 401
第14章 Oracle特殊問題的解決案例 402
14.1 ORA-00257 archiver error 402
14.2 由于恢復(fù)區(qū)空間不足導(dǎo)致ORA-03113錯誤 404
14.3 解決Oracle SYSAUX空間占用嚴(yán)重問題 405
14.3.1 清理SYSAUX下的歷史統(tǒng)計信息 406
14.3.2 清理SYAUX表空間中無效的ASH(活動會話歷史)信息 407
14.3.3 檢查SYSAUX表空間可收縮的數(shù)據(jù)文件 408
14.3.4 SYSAUX清理后的檢查 409
后記 411

本目錄推薦

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