-
>
全國計算機等級考試最新真考題庫模擬考場及詳解·二級MSOffice高級應用
-
>
決戰行測5000題(言語理解與表達)
-
>
軟件性能測試.分析與調優實踐之路
-
>
第一行代碼Android
-
>
JAVA持續交付
-
>
EXCEL最強教科書(完全版)(全彩印刷)
-
>
深度學習
Oracle數據庫存儲管理與性能優化 版權信息
- ISBN:9787113270339
- 條形碼:9787113270339 ; 978-7-113-27033-9
- 裝幀:80g膠版紙
- 冊數:暫無
- 重量:暫無
- 所屬分類:>>
Oracle數據庫存儲管理與性能優化 本書特色
透徹講述不同存儲方案的工作機理并驗證;性能優化方面著重在問題發生、預判、防患、分析和解決上給出可行方案。
Oracle數據庫存儲管理與性能優化 內容簡介
本書以Oracle 11g為藍本,在某些實踐應用中也講到了12c版本,全面系統地介紹了大型對象關系型數據庫服務器Oracle性能優化方面的大部分內容,包括看懂SQL執行計劃、Oracle存儲管理、Oracle內存管理、Oracle性能指標及追蹤、Oracle性能報告、Oracle實戰案例等內容
Oracle數據庫存儲管理與性能優化 目錄
1.1 Oracle數據庫進程結構 2
1.2 Oracle數據庫邏輯結構 3
1.3 Oracle數據庫物理結構 5
1.4 Oracle數據庫邏輯結構與物理結構的耦合關系 6
1.5 本章小結 8
第2章 SQL執行計劃 9
2.1 看懂SQL執行計劃前需要掌握的概念 9
2.2 SQL*Plus的執行計劃設置 12
2.2.1 設置Autotrace(自動跟蹤)參數 12
2.2.2 在SQL*Plus中顯示SQL執行計劃 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 動態分析采樣 28
2.5 關于RBO與CBO 28
2.6 關于執行計劃中的索引訪問方法 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的執行計劃 35
2.8 常用Hints(提示) 36
2.8.1 與優化器模式相關的Hint 37
2.8.2 與表訪問相關的Hint 40
2.8.3 與索引訪問相關的Hint 40
2.8.4 與表連接順序相關的Hint 47
2.9 實踐案例:位圖索引對性能的影響 48
2.10 實踐案例:分區索引對性能的影響 52
2.10.1 關于分區索引的說明 52
2.10.2 分區索引實驗 54
2.11 如何更好地判斷SQL效率 71
2.12 本章小結 72
第3章 Oracle數據庫存儲結構 73
3.1 邏輯存儲結構 73
3.1.1 塊(Block) 73
3.1.2 區(Extent) 74
3.1.3 段(Segment) 75
3.1.4 表空間(Tablespace) 75
3.1.5 4種邏輯存儲結構的關系 76
3.2 Oracle物理存儲結構 76
3.3 本章小結 77
第4章 Oracle表空間 78
4.1 表空間管理 78
4.1.1 表空間(TABLESPACE)的類型 79
4.1.2 表空間(TABLESPACE)的管理 80
4.1.3 表空間(TABLESPACE)的創建 82
4.2 表空間的查看 88
4.2.1 表空間固定信息的查看 89
4.2.2 表空間動態信息的查看 90
4.3 表空間管理準則 91
4.4 創建表空間應遵循的一般原則 92
4.5 表空間創建模板及其刪除應用場景分析 94
4.5.1 表空間創建模板語句 95
4.5.2 表空間刪除的4種方式及其應用場景分析 96
4.6 關于表空間創建的數據文件DATAFILE參數 98
4.6.1 SIZE子句 99
4.6.2 EXTENT分區分配方案 99
4.6.3 關于REUSE(重復使用)的說明 99
4.7 關于表空間參數的其他說明 101
1.段Segment管理策略 101
2.Table/Segment/Extent/Block之間的關系 101
3.TABLESPACE和DATAFILE之間的關系 101
4.8 回收表空間中浪費的空間 101
4.8.1 查看表空間碎片率 102
4.8.2 得到表空間的DDL(創建)語句 103
4.8.3 表空間屬性PCTINCREASE(百分比)參數的修改 105
4.8.4 回收表空間碎片 105
4.8.5 Oracle移動索引到其他表空間 112
4.9 TABLE的碎片回收 113
4.9.1 與回收TABLE碎片有關的兩個存儲過程 113
4.9.2 表碎片回收處理 118
4.10 Oracle 11g undo_retention(撤銷保留時間) 120
4.10.1 關于undo 的參數 121
4.10.2 undo_retention(撤銷保留時間)狀態說明及參數調整 122
4.11 本章小結 123
第5章 自動存儲管理(ASM) 125
5.1 ASM概述 125
5.1.1 ASM冗余 125
5.1.2 ASM進程 126
5.1.3 ASM實例和數據庫實例對應關系 127
5.1.4 Cluster(集群) ASM 架構 127
5.2 ASM實例搭建 128
5.2.1 環境介紹 128
5.2.2 創建裸設備以及創建ASM磁盤組 129
5.2.3 安裝Oracle 網絡基礎架構win64_11gR2_grid組件 133
5.2.4 后續處理 134
5.3 ASM實例管理 136
5.3.1 查看可用分區 137
5.3.2 加入ASM磁盤 138
5.3.3 開啟CSS服務 139
5.3.4 新建ASM DiskGroup給數據庫使用 139
5.4 磁盤組的管理 143
5.4.1 磁盤組的創建與刪除 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 創建數據文件 153
5.5.2 添加重做日志文件 157
5.5.3 創建數據庫 159
5.6 本章小結 159
第6章 Oracle的內存結構 160
6.1 Oracle內存結構 160
6.1.1 SGA(系統全局區) 161
6.1.2 PGA(程序全局區) 163
6.1.3 UGA(用戶全局區) 165
6.2 SGA組件介紹 165
6.2.1 固定SGA(Fixed SGA) 166
6.2.2 塊緩沖區(Database Buffer Cache) 166
6.2.3 數據高速緩存的工作原理過程 167
6.2.4 重做日志緩沖區(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結構 171
6.3.1 Private SQL Area(私有SQL區) 171
6.3.2 Work Area(工作區) 172
6.3.3 Session Memory 173
6.3.4 自動PGA管理 174
6.4 Oracle 11g系統進程介紹 175
6.4.1 數據庫寫進程(DBWn) 177
6.4.2 日志文件寫進程(LGWR) 178
6.4.3 檢查點進程(CKPT) 179
6.4.4 系統監控進程(SMON) 180
6.4.5 進程監控進程(PMON) 180
6.4.6 恢復進程(RECO) 180
6.4.7 作業隊列進程(CJQn) 181
6.4.8 歸檔進程(ARCn) 181
6.4.9 隊列監控進程(QMNn) 182
6.4.10 調度進程(Dnnn) 182
6.4.11 內存管理進程(MMAN) 182
6.4.12 恢復寫入進程 (RVWR) 182
6.4.13 內存管理進程(MMON) 183
6.4.14 其他后臺進程 183
6.5 自動共享內存管理(ASMM) 183
6.6 關于11g與12c內存管理 185
6.6.1 Orodo內存管理形式 186
6.6.2 11g下的AMM內存管理 187
6.7 本章小結 188
第7章 Oracle的內存分析與調整 189
7.1 Oracle 內存工作機制 189
7.2 內存使用情況分析 190
7.2.1 剩余內存 190
7.2.2 內存擊中率 190
7.3 SQL效率及其他指標查看分析 193
7.3.1 檢查占用CPU時間比較長的SQL語句 193
7.3.2 執行效率*差的SQL語句 194
7.3.3 識別低效率執行的語句 195
7.3.4 V$sqlarea視圖提供的執行細節 196
7.3.5 查看數據庫db_cache_size及各類pool_size值 198
7.4 Oracle內存調整——系統全局區SGA 199
7.5 Oracle內存調整——共享池(Shared Pool) 201
7.5.1 共享池(Shared Pool)相關視圖 201
7.5.2 共享池(Shared Pool) 207
7.5.3 庫高速緩存(Library Cache) 208
7.5.4 數據緩沖區(Buffer Cache) 215
7.5.5 重做日志緩沖區(Redo Log Buffer) 221
7.5.6 大池 222
7.5.7 Java池 222
7.5.8 流池 223
7.6 本章小結 223
第8章 Oracle動態性能指標 224
8.1 主要與Oracle動態性能指標相關的基礎概念 224
8.2 從v$sysstat視圖獲取負載間檔 228
8.2.1 Buffer Cache Hit Ratio(DB緩存命中率) 229
8.2.2 Soft Parse Ratio(軟解析比率) 229
8.2.3 In-Memory Sort Ratio(內存排序率) 230
8.2.4 Parse To Execute Ratio(SQL解析執行比率) 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 其他計算統計以衡量負載方式 231
8.3.1 Blocks Changed For Each Read(每次讀引起的塊改變) 231
8.3.2 Rows For Each Sort(每個排序引發的排序行量) 232
8.3.3 Oracle獲取當前數據庫負載情況信息 232
8.4 本章小結 234
第9章 Oracle的索引與性能 235
9.1 Oracle數據庫索引類型 235
9.1.1 B*tree索引 235
9.1.2 位圖索引(Bitmap Index) 236
9.1.3 位圖連接索引(Bitmap Join Index) 237
9.1.4 基于函數的索引(Function-Based Index) 237
9.1.5 應用域索引(Application Domain Index) 239
9.1.6 Hash索引 242
9.1.7 分區索引 242
9.2 索引典型操作 243
9.2.1 典型創建操作 243
9.2.2 典型刪除操作 243
9.2.3 典型移動操作 244
9.2.4 得到創建索引的SQL語句 244
9.2.5 查看數據庫中的索引及跳過設置 246
9.2.6 通用索引刪除腳本 246
9.3 有無索引及不同類型索引對查詢效率高低影響實驗 247
9.4 關于索引的建議 251
9.5 普通表轉分區表實驗及分區表相關信息查詢 254
9.5.1 普通表轉分區表實驗環境搭建 254
9.5.2 普通表轉分區表 255
9.5.3 查看Oracle都有哪些分區表 258
9.5.4 表分區查詢 259
9.6 本章小結 259
第10章 Oracle性能實驗 260
10.1 信息收集、庫加壓處理 260
10.1.1 信息收集處理 260
10.1.2 給數據庫加壓處理及瓶頸解決過程 270
10.1.3 存儲過程使用綁定 272
10.1.4 將UPDATE命令加載到共享池并以并行方式執行 273
10.1.5 通過并發給數據庫加壓 273
10.1.6 查找SESSION ID及serial# 274
10.1.7 殺掉SESSION ID 275
10.1.8 通過merge命令加壓 275
10.1.9 批量數據加壓處理 277
10.2 信息查看跟蹤SQL語句 278
10.2.1 比率相關 278
10.2.2 等待、鎖及阻塞相關 286
10.2.3 獲取SQL語句相關 302
10.2.4 資源消耗相關 310
10.2.5 游標相關 313
10.3 日常需要記錄的監控點以及監控語句 315
10.4 關于Oracle的I/O 318
10.5 實驗結論 319
10.5.1 調優過程 319
10.5.2 調優前后SPFILE參數文件對比 323
10.5.3 實驗總結 326
10.6 本章小結 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個嚴重等待事件)報告 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 建立腳本并執行 350
11.6 本章小結 351
第12章 Oracle的ADDM報告 352
12.1 Oracle性能調優綜述 352
12.2 Oracle ADDM報告概述 353
12.2.1 使用addmrpt.sql來創建ADDM報告 353
12.2.2 使用DBMS_ADVISOR程序包來創建ADDM報告 354
12.3 ADDM報告實驗 358
12.3.1 負荷環境搭建 358
12.3.2 第1次采集快照并施加負荷 359
12.3.3 采集第2次快照 359
12.3.4 創建一個優化任務并執行 360
12.3.5 查詢建議結果 361
12.3.6 ADDM報告解釋 361
12.4 本章小結 365
第13章 Oracle 11g R2 RAC集群部署實驗 367
13.1 總體規劃 367
13.1.1 部署環境 367
13.1.2 網絡配置 368
13.1.3 Oracle軟件組件 368
13.1.4 數據庫配置 369
13.1.5 存儲組件 369
13.2 服務器規劃 370
13.2.1 通過StartWind 6.0虛擬磁盤 370
13.2.2 劃分Oracle安裝目錄DB(F:)和虛擬內存(G:) 370
13.2.3 修改虛擬內存(兩個節點都設置) 371
13.2.4 修改winrac1和winrac2的hosts文件 372
13.2.5 修改注冊表,禁用媒體感知功能 372
13.3 網絡規劃 373
13.3.1 修改網卡名(兩個節點都設置) 373
13.3.2 修改網卡優先級并配置IP 374
13.3.3 測試兩點的連通性 375
13.4 存儲規劃 376
13.4.1 規劃磁盤陣列 376
13.4.2 共享安裝目錄DB(F:)和C盤 377
13.5 安裝Grid軟件前的設置和檢查 378
13.5.1 服務器時間同步 378
13.5.2 檢測節點之間能否相互訪問共享 378
13.5.3 檢查Grid安裝是否符合條件 379
13.6 Grid及數據庫軟件的安裝 382
13.6.1 安裝win64 grid 11.2.0.4.0集群管理軟件 383
13.6.2 Clusterware安裝校驗(檢查CRS資源狀態) 387
13.6.3 安裝DATABASE軟件 388
13.6.4 創建ASM磁盤組 391
13.6.5 DBCA建立數據庫 394
13.7 Oracle RAC集群管理常用操作 398
13.8 本章小結 401
第14章 Oracle特殊問題的解決案例 402
14.1 ORA-00257 archiver error 402
14.2 由于恢復區空間不足導致ORA-03113錯誤 404
14.3 解決Oracle SYSAUX空間占用嚴重問題 405
14.3.1 清理SYSAUX下的歷史統計信息 406
14.3.2 清理SYAUX表空間中無效的ASH(活動會話歷史)信息 407
14.3.3 檢查SYSAUX表空間可收縮的數據文件 408
14.3.4 SYSAUX清理后的檢查 409
后記 411
Oracle數據庫存儲管理與性能優化 作者簡介
甘長春老師畢業于北京交通大學電氣工程及自動化專業,目前供職于中國鐵路北京局集團公司。自從參加工作以來,先后參與了多個鐵路應用項目的開發工作,同時也與多家IT企業合作研發數據庫架構設計及開發項目。通過這些項目的開發,積累了一定的實踐經驗,并從中獲取了一些數據庫開發運維的心得。 除此之外,自2014年起,甘長春老師一直在天津大學軟件學院從事兼職教學工作,所授課程為Oracle和PHP,教學經驗的積累也讓他更清晰地明白了如何把一個知識點講解更清楚,力求引領讀者盡快掌握書中所講內容。 張建軍,畢業于天津師范大學計算機科學與技術專業 ,現任天津市融創軟通科技股份有限公司副總經理,教育培訓事業部技術總監 ,高級工程師;Oracle認證專家,RedHad(紅帽)認證專家, 截至目前有近20年的軟件開發、項目管理及教育培訓工作經驗。
- >
人文閱讀與收藏·良友文學叢書:一天的工作
- >
中國人在烏蘇里邊疆區:歷史與人類學概述
- >
月亮與六便士
- >
山海經
- >
我與地壇
- >
大紅狗在馬戲團-大紅狗克里弗-助人
- >
隨園食單
- >
中國歷史的瞬間