没有合适的资源?快使用搜索试试~ 我知道了~
首页Oracle学习手册:TianleSoftware的数据库探索之路
Oracle学习手册:TianleSoftware的数据库探索之路
需积分: 10 0 下载量 57 浏览量
更新于2024-07-25
收藏 45.36MB PDF 举报
"Oracle 学习文档,由TianleSoftware整理,包含了作者在学习Oracle数据库过程中的实践经验、遇到的问题及解决方案,适用于Oracle数据库初学者。文档内容可能包含对前辈们资料的引用和网络信息的整合,旨在方便查阅和学习。文档可能会存在排版问题和理解错误,作者欢迎读者指出问题并承诺及时更新。此外,文档提供了多个DBA交流群的QQ号码,供学习者交流讨论。"
Oracle是世界上最广泛使用的数据库管理系统之一,尤其在企业级应用中占据重要地位。学习Oracle数据库涉及众多知识点,包括但不限于以下几点:
1. **基础概念**:了解数据库的基本概念,如表、索引、视图、存储过程、触发器等,以及SQL语言的基本操作,如DML(数据操纵语言)的INSERT、UPDATE、DELETE,以及DDL(数据定义语言)的CREATE、ALTER、DROP等。
2. **数据库架构**:掌握Oracle的数据存储结构,包括数据文件、控制文件、重做日志文件、参数文件等,理解数据库实例与数据库的区别。
3. **SQL优化**:学习如何编写高效的SQL语句,避免全表扫描,利用索引提高查询速度,理解执行计划和索引的选择性。
4. **性能监控与调优**:学习使用Oracle的性能分析工具,如SQL*Plus、 tkprof、AWR(自动工作负载repository)、ASH(活动会话历史),以及如何通过V$视图来监控数据库状态。
5. **备份与恢复**:理解Oracle的备份策略,如RMAN(恢复管理器)的使用,冷备份与热备份的概念,以及如何进行数据库的完整恢复、增量恢复和归档日志恢复。
6. **安全性**:设置用户权限,理解角色与权限的分配,学习如何使用DBA工具管理用户和权限,以及如何保护敏感数据。
7. **集群与高可用性**:了解Oracle RAC(Real Application Clusters)和Data Guard,以及如何实现数据库的高可用性和故障切换。
8. **数据库设计**:理解数据库规范化理论,进行ER模型设计,以及如何将设计转化为实际的Oracle表结构。
9. **存储结构**:学习Oracle的表空间、段、区和块等存储层次,以及如何进行存储优化。
10. **故障诊断与问题解决**:学习如何使用Oracle的跟踪文件、警告日志等来诊断和解决问题。
学习Oracle的过程中,参考TianleSoftware的Oracle学习手册可以提供实践指导和问题解答,同时加入DBA交流群能够与其他学习者或经验丰富的DBA互动,共同进步。持续学习和实践是掌握Oracle的关键,因为数据库技术在不断发展,理解也会随着经验的积累而深化。
Tianlesoftware 学习 Oracle Blog: http://blog.csdn.net/tianlesoftware
DBA1 群:62697716(满); DBA2 群:62697977(满); DBA3 群:62697850(满); DBA 超级群:63306533
DBA4 群:83829929(满); DBA5 群:142216823 DBA6 群:158654907
2.5.1. SPFILE
丢失
....................................................................................................................... 526
2.5.2. Controlfile
全部丢失
......................................................................................................... 526
2.5.3 UNDO
损坏的情况
........................................................................................................ 526
2.5.3.1 方法一: 使用 system segment ................................................................................................. 527
2.5.3.2.方法二:跳过损坏的 segment ................................................................................................. 527
2.5.4. Redo Log File
损坏
............................................................................................................ 528
2.5.3.1 CURRENT 情况 ....................................................................................................................... 528
2.5.3.2 非 CURRENT 情况 .................................................................................................................. 529
2.5.5.
非系统表空间损坏
.......................................................................................................... 529
2.5.6.
数据文件损坏
................................................................................................................. 530
2.5.7.
基于时间点
/SCN/
日志序列的不完全恢复
.................................................................... 530
2.5.7.1 基于时间点 ............................................................................................................................... 530
2.5.7.2 基于 SCN: ................................................................................................................................. 531
2.5.7.3 基于日志序列 ........................................................................................................................... 531
2.5.8.
非
catalog
下完全恢复
.................................................................................................... 531
2.6 前滚(ROLL FORWORD)和回滚(ROLL BACK) .......................................................................... 532
2.6.1
什么时候需要实例恢复
................................................................................................... 532
2.6.1.1 Clean shutdown 时 .................................................................................................................... 532
2.6.1.2 非正常 shutdown ..................................................................................................................... 533
2.6.1.3 crash recovery 顺序问题 .......................................................................................................... 533
2.6.2 Crash Recovery
过程
......................................................................................................... 533
2.6.3
为什么数据库的实例恢复是先前滚再回滚
................................................................... 534
三. RMAN....................................................................................................................................... 534
四. DATA GUARD ............................................................................................................................ 537
五. RAC .......................................................................................................................................... 731
5.1 集群环境下的一些特殊问题 ................................................................................................. 731
5.1.1
并发控制
.......................................................................................................................... 731
5.1.2
健忘症
(Amnesia) .............................................................................................................. 731
5.1.3
脑裂
(Split Brain) ................................................................................................................ 731
5.1.4 IO
隔离
(Fencing) ............................................................................................................ 732
5.2 RAC 并发 ............................................................................................................................... 732
5.2.1 GRD
(
Global Resource Directory
)
................................................................................ 733
5.3. RAC 架构 .................................................................................................................................. 733
5.3.1 SGA
的变化
....................................................................................................................... 733
5.3.2
后台进程的变化
.............................................................................................................. 733
5.3.2.1 LMSn ....................................................................................................................................... 734
5.3.2.2 LMD ......................................................................................................................................... 734
5.3.2.3 LCK........................................................................................................................................... 734
5.3.2.4 LMON ...................................................................................................................................... 734
5.3.2.5 DIAG ........................................................................................................................................... 734
5.3.2.6 GSD ............................................................................................................................................. 734
5.3.3
文件
.................................................................................................................................. 734
Tianlesoftware 学习 Oracle Blog: http://blog.csdn.net/tianlesoftware
DBA1 群:62697716(满); DBA2 群:62697977(满); DBA3 群:62697850(满); DBA 超级群:63306533
DBA4 群:83829929(满); DBA5 群:142216823 DBA6 群:158654907
5.3.3.1 spfile ........................................................................................................................................... 735
5.3.3.2 Redo Thread ............................................................................................................................... 735
5.3.3.3 Archived Log ............................................................................................................................... 735
1)使用 NFS ..................................................................................................................................... 735
2)实例间归档(CIA: Cross Instance Archive) ............................................................................. 736
3)使用 ASM .................................................................................................................................... 736
5.3.3.4 Undo Tablespace ........................................................................................................................ 736
5.3.4 SCN(System Change Number) ............................................................................................ 736
5.3.5 Cache Fusion
,
GCS
,
GES
关系
........................................................................................ 736
5.4 RAC 集群 ................................................................................................................................. 737
5.4.1 Clusterware ........................................................................................................................ 737
5.4.2 Clusterware
组成
.............................................................................................................. 737
5.4.2.1 磁盘文件 ............................................................................................................................. 737
5.4.2.2 Clusterware 后台进程 ......................................................................................................... 738
5.4.3 VIP
原理和特点
................................................................................................................ 740
5.4.4 Clusterware
的日志体系
.................................................................................................. 741
5.5 RAC FAILOVER ............................................................................................................................. 742
5.5.1
.
Client-Side Connect Time Failover ................................................................................... 742
5.5.2
.
Client-Side TAF(Transparent Application Failover) .......................................................... 743
5.5.3. Client-Side TAF
配置示例
.................................................................................................. 744
5.3.3.1 主机信息如下 ............................................................................................................................ 744
5.3.3.2 Node1 配置 ................................................................................................................................ 744
5.3.3.3 NODE2 配置 ............................................................................................................................... 745
5.3.3.4 在 node1 和 node2 的 tnsnames.ora 文件添加如下内容 ........................................................ 745
5.3.3.5 在所有节点设置 remote listener .............................................................................................. 746
5.3.3.6 在客户端设置的 tnsnames.ora 设置 TAF ................................................................................. 746
5.5.4
.
Service-Side TAF .............................................................................................................. 747
5.5.4.1 用 DBCA 配置 Service .............................................................................................................. 747
5.5.4.2 用 srvctl 命令配置 Service....................................................................................................... 748
5.5.4.3 配置 Service 的注意事项 ........................................................................................................ 749
5.5.5 Service-Side TAF
手工配置示例
..................................................................................... 749
5.6 RAC LOADBALANCE ...................................................................................................................... 754
5.6.1 Connection Balancing ......................................................................................................... 754
5.6.1.1 客户端均衡(Client-Side LB) ................................................................................................. 755
5.6.1.2 服务器端均衡(Server-Side LB) ............................................................................................ 755
5.6.1.3 两种 LB 的配置方法 ................................................................................................................ 757
5.6.2
利用
Service
分散负载
..................................................................................................... 757
5.7 RAC 启动和关闭 ..................................................................................................................... 759
5.7.1.
检查共享设备
................................................................................................................. 759
5.7.1.1 如果使用 ocfs2 的,检查 ocfs2 状态 ..................................................................................... 759
5.7.1.2. 如果使用 raw device. .............................................................................................................. 759
5.7.1.3. 检查 ASM ................................................................................................................................. 759
5.7.2
.自动启动
RAC
并检查相关进程
.................................................................................... 759
5.7.3
.手动启动
RAC ................................................................................................................. 762
Tianlesoftware 学习 Oracle Blog: http://blog.csdn.net/tianlesoftware
DBA1 群:62697716(满); DBA2 群:62697977(满); DBA3 群:62697850(满); DBA 超级群:63306533
DBA4 群:83829929(满); DBA5 群:142216823 DBA6 群:158654907
5.8 ORACLE RAC 常用维护工具和命令.......................................................................................... 764
5.8.1
节点层
............................................................................................................................... 764
5.8.2
网络层
............................................................................................................................... 764
5.8.3
集群层
............................................................................................................................... 766
5.8.3.1 CRSCTL ........................................................................................................................................ 766
5.8.3.1.1 检查 CRS 状态 ................................................................................................................. 767
5.8.3.1.2 配置 CRS 栈是否自启动 ................................................................................................. 767
5.8.3.1.3 启动,停止 CRS 栈 ......................................................................................................... 768
5.8.3.1.4 查看 Votedisk 磁盘位置 .................................................................................................. 768
5.8.3.1.5 查看和修改 CRS 参数 ..................................................................................................... 768
5.8.3.1.6 跟踪 CRS 模块,提供辅助功能 ...................................................................................... 768
5.8.3.1.7 维护 Voting disk ................................................................................................................ 770
5.8.3.2 OCR 命令系列 ............................................................................................................................ 770
5.8.3.2.1 ocrdump ............................................................................................................................. 771
5.8.3.2.2 ocrcheck ............................................................................................................................. 771
5.8.3.2.3 ocrconfig ............................................................................................................................ 772
5.8.3.2.4 使用 ocrconfig 导出,导入进行备份和恢复 ................................................................. 772
5.8.3.2.5 移动 OCR 文件位置 ......................................................................................................... 774
5.8.4
应用层
.............................................................................................................................. 775
5.8.4.1 crs_stat ....................................................................................................................................... 775
5.8.4.2 onsctl .......................................................................................................................................... 777
5.8.4.2.1 ONS 配置内容 .................................................................................................................. 777
5.8.4.2.2 配置 ONS .......................................................................................................................... 778
5.8.4.2.3 onsctl 命令 ........................................................................................................................ 778
5.8.4.3 srvctl ........................................................................................................................................... 780
5.8.4.3.1 使用 config 查看配置 ....................................................................................................... 781
5.8.4.3.2 使用 add 添加对象 ......................................................................................................... 782
5.8.4.3.3 使用 enable/disable 启动,禁用对象 ............................................................................ 783
5.8.4.3.4 使用 remove 删除对象 ................................................................................................... 784
5.8.4.3.5 启动,停止对象与查看对象 ........................................................................................... 784
5.8.4.3.6 跟踪 srvctl ......................................................................................................................... 785
5.8.4.4 初始化 OCR 和 Voting Disk ...................................................................................................... 785
5.8.4.5 官网的命令说明 ....................................................................................................................... 787
5.8.4.6 crs_stat 完整显示进程名脚本 ................................................................................................. 789
六. 常用脚本............................................................................................................................... 1206
6.1 查看表空间使用率 ................................................................................................................. 1206
6.2 获取当前 TRACE 文件路径脚本 .............................................................................................. 1207
6.3 发送邮件的存储过程 ............................................................................................................. 1207
6.4 AWR 自动收集并发送邮箱 PYTHON 脚本 ............................................................................... 1216
6.4.1
准备工作
......................................................................................................................... 1216
6.4.2
生成
AWR
报告
SQL
脚本
.............................................................................................. 1221
6.4.3
自动上传
AWR
的
Python
脚本
..................................................................................... 1222
6.4.4
将
Python
添加到
crontab ............................................................................................. 1224
Tianlesoftware 学习 Oracle Blog: http://blog.csdn.net/tianlesoftware
DBA1 群:62697716(满); DBA2 群:62697977(满); DBA3 群:62697850(满); DBA 超级群:63306533
DBA4 群:83829929(满); DBA5 群:142216823 DBA6 群:158654907
6.5 查看 SEGMENT 中 BLOCK 的存储信息 ...................................................................................... 1224
6.6 ORACLE 用 SQLPROMPT 修改 SQLPLUS 提示符 ........................................................................... 1227
6.6.1
方法一:使用定义的变量
............................................................................................. 1228
6.6.2
方法二:使用
sql
语句拼接
......................................................................................... 1229
七. 性能优化............................................................................................................................... 1242
7.1 软解析 和 硬解析 ................................................................................................................. 1242
7.1.1 SQL
解析过程
.............................................................................................................. 1242
7.1.2
.解析过程详解
.............................................................................................................. 1242
7.1.2.1 语法检测................................................................................................................................. 1242
7.1.2.2 语义检查................................................................................................................................. 1242
7.1.2.3 解析(Parse) ............................................................................................................................. 1243
7.1.2.3.1 Parse 主要分为两种: .................................................................................................... 1243
7.1.2.3.2 解析的两个步骤 ............................................................................................................ 1243
7.1.2.4 执行 sql ................................................................................................................................... 1245
7.2 绑定变量 ................................................................................................................................. 1245
7.2.1 Band Variable
说明
...................................................................................................... 1245
7.2.2
.
OLAP
和
OLTP
系统中的绑定变量
............................................................................. 1246
7.2.3
.
Bind peaking.................................................................................................................. 1247
7.2.4
绑定变量
使用示例
..................................................................................................... 1248
7.3 CBO 和 RBO ............................................................................................................................ 1250
7.3.1 RBO
基于规则的优化器
................................................................................................. 1250
7.3.2 CBO
基于成本的优化器
.................................................................................................. 1251
7.3.2.1 CBO 说明 ................................................................................................................................. 1251
7.3.3.2 优化器模式 ............................................................................................................................. 1252
7.3.3.2.1 修改 CBO 模式的三种方法 ............................................................................................ 1252
7.3.3.2.2 查看 CBO 模式 ............................................................................................................... 1253
7.3.3.2.3 优化器模式具体说明..................................................................................................... 1253
7.3.3 optimizer_index_cost_adj
参数
....................................................................................... 1254
7.3.4
在
CBO
下写
SQL
语句的注意事项
................................................................................ 1254
7.4 10053 事件 .............................................................................................................................. 1256
7.4.1 10053
事件说明
............................................................................................................. 1256
7.4.2
示例:
............................................................................................................................ 1257
7.4.3
查看生成的
trace
文件
.................................................................................................. 1258
7.5 10046 事件 .............................................................................................................................. 1264
7.5.1 10046
事件说明
............................................................................................................. 1264
7.5.2
对当前
session
使用
10046
事件
.................................................................................. 1264
7.5.3
对其他的会话进行跟踪
.................................................................................................. 1265
7.5.3.1 用 SQL_TRACE 跟踪 ................................................................................................................ 1265
7.5.3.2 使用 10046 事件跟踪 ............................................................................................................ 1265
7.6 SQL TRACE .................................................................................................................................. 1266
7.7 统计信息 ................................................................................................................................. 1267
7.7.1. Statistic
说明
.................................................................................................................. 1267
7.7.2
统计信息的收集
.......................................................................................................... 1268
Tianlesoftware 学习 Oracle Blog: http://blog.csdn.net/tianlesoftware
DBA1 群:62697716(满); DBA2 群:62697977(满); DBA3 群:62697850(满); DBA 超级群:63306533
DBA4 群:83829929(满); DBA5 群:142216823 DBA6 群:158654907
7.7.2.1 查看该 Job 信息 .................................................................................................................... 1268
7.2.2.2 监控参数 STATISTICS_LEVEL .................................................................................................. 1269
7.2.2.3 停用该 Job .............................................................................................................................. 1269
7.2.3.4 系统用户统计信息的收集 ...................................................................................................... 1269
7.7.3.
统计信息的存储位置
.................................................................................................... 1270
7.3.3.1 表的统计信息 ......................................................................................................................... 1271
7.3.3.2 索引列的统计信息 ................................................................................................................. 1271
7.3.3.3 列的统计信息 ......................................................................................................................... 1271
7.3.3.4 测试:表只有分析了之后,num_rows 才会有值 ............................................................... 1271
7.7.4
直方图(
histograms
)
................................................................................................. 1272
7.7.4.1 Height-Balanced Histograms ................................................................................................. 1273
7.7.4.2 Frequency Histograms ........................................................................................................... 1274
7.7.5 DBMS_STATS
包
使用说明
........................................................................................... 1276
7.7.5.1 DBMS_STATS 包的几个常用功能:性能的收集,设置,删除 ............................................. 1277
7.7.5.1.1 GATHER_TABLE_STATS 存储过程 ............................................................................... 1277
7.7.5.1.2 GATHER_SCHEMA_STATS 存储过程 ............................................................................ 1283
7.7.5.1.3 DBMS_STATS.GATHER_INDEX_STATS 存储过程 ........................................................... 1287
7.7.5.2 DBMS_STATS 包管理功能 ........................................................................................................ 1289
7.7.5.2.1 获取分析数据 ................................................................................................................ 1289
7.7.5.2.2 设置分析数据 ................................................................................................................ 1290
7.7.5.2.3 删除分析数据 ................................................................................................................ 1290
7.7.5.2.4 保存分析数据 ................................................................................................................ 1291
7.7.5.2.5 导入和导出分析数据..................................................................................................... 1291
7.7.5.2.6 锁定分析数据 ................................................................................................................ 1292
7.7.5.2.7 分析数据的恢复 ............................................................................................................ 1292
7.7.6
动态采样
...................................................................................................................... 1293
7.7.6.1 什么是动态采样 ..................................................................................................................... 1293
7.7.6.2 动态采样的级别 ..................................................................................................................... 1296
7.7.6.2.1 Level 0 .............................................................................................................................. 1297
7.7.6.2.2 Level 1 .............................................................................................................................. 1297
7.7.6.2.3 Level 2 .............................................................................................................................. 1297
7.7.6.2.4 Level 3 .............................................................................................................................. 1297
7.7.6.2.5 Level 4 .............................................................................................................................. 1297
7.7.6.2.6 Level 5,6,7,8,9 ...................................................................................................... 1297
7.7.6.2.7 Level 10 ............................................................................................................................ 1297
7.7.6.3 什么时候使用动态采样 ......................................................................................................... 1297
7.8 HINT .......................................................................................................................................... 1298
7.8.1
和优化器相关的
Hint ..................................................................................................... 1300
7.8.1.1 ALL_ROWS 和 FIRST_ROWS(n) -- CBO 模式 .................................................................... 1300
7.8.1.2 RULE Hint -- RBO 模式 ....................................................................................................... 1300
7.8.2
访问路径相关的
Hint ...................................................................................................... 1301
7.8.2.1 FULL Hint .................................................................................................................................. 1301
7.8.2.2 INDEX Hint ................................................................................................................................ 1301
7.8.2.3 NO_INDEX Hint ......................................................................................................................... 1302
剩余1430页未读,继续阅读
2020-07-22 上传
2009-02-21 上传
2016-10-19 上传
2009-10-30 上传
2022-06-08 上传
2009-04-03 上传
煽情的狼
- 粉丝: 0
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- JHU荣誉单变量微积分课程教案介绍
- Naruto爱好者必备CLI测试应用
- Android应用显示Ignaz-Taschner-Gymnasium取消课程概览
- ASP学生信息档案管理系统毕业设计及完整源码
- Java商城源码解析:酒店管理系统快速开发指南
- 构建可解析文本框:.NET 3.5中实现文本解析与验证
- Java语言打造任天堂红白机模拟器—nes4j解析
- 基于Hadoop和Hive的网络流量分析工具介绍
- Unity实现帝国象棋:从游戏到复刻
- WordPress文档嵌入插件:无需浏览器插件即可上传和显示文档
- Android开源项目精选:优秀项目篇
- 黑色设计商务酷站模板 - 网站构建新选择
- Rollup插件去除JS文件横幅:横扫许可证头
- AngularDart中Hammock服务的使用与REST API集成
- 开源AVR编程器:高效、低成本的微控制器编程解决方案
- Anya Keller 图片组合的开发部署记录
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功