Oracle学习手册:TianleSoftware完整指南

5星 · 超过95%的资源 需积分: 10 14 下载量 190 浏览量 更新于2024-06-11 收藏 45.36MB PDF 举报
Oracle 学习手册详解 Oracle 是一种关系型数据库管理系统(RDBMS),由 Oracle Corporation 开发和维护。Oracle 数据库系统是一个功能强大且灵活的数据库管理系统,广泛应用于企业级应用、政府机构和个人用户中。 以下是 Oracle 学习手册的详细知识点: 一、Oracle 基础知识 * Oracle 是一种关系型数据库管理系统(RDBMS),使用 SQL 语言来管理和操作数据库。 * Oracle 数据库系统由 Oracle Corporation 开发和维护。 * Oracle 数据库系统是一个功能强大且灵活的数据库管理系统,广泛应用于企业级应用、政府机构和个人用户中。 二、Oracle 安装和配置 * 安装 Oracle 数据库管理系统需要选择合适的版本和语言环境。 * 配置 Oracle 数据库管理系统需要设置数据库名称、用户名和密码、监听器配置等参数。 * 安装和配置 Oracle 数据库管理系统需要了解 Oracle 的架构和组件。 三、Oracle 数据库设计 * Oracle 数据库设计需要了解数据库设计的基本原则和方法。 * Oracle 数据库设计需要考虑数据库的性能、安全性和可扩展性。 * Oracle 数据库设计需要了解数据模型、数据 normalize 和数据库架构等概念。 四、Oracle SQL 语言 * Oracle SQL 语言是用于管理和操作 Oracle 数据库的语言。 * Oracle SQL 语言包括数据定义语言(DDL)、数据操作语言(DML)和数据控制语言(DCL)三部分。 * Oracle SQL 语言支持各种数据类型,包括数字、字符、日期和时间等。 五、Oracle 数据库管理 * Oracle 数据库管理需要了解数据库的性能、安全性和可扩展性。 * Oracle 数据库管理需要了解数据库的备份和恢复、数据库优化和数据库安全等概念。 * Oracle 数据库管理需要了解数据库的监控和维护、数据库性能优化和数据库故障排除等技术。 六、Oracle 高级主题 * Oracle 高级主题包括 Oracle 的高级特性和功能,如分区表、物化视图、数据挖掘和数据仓库等。 * Oracle 高级主题需要了解 Oracle 的架构和组件、Oracle 的高级特性和功能等。 * Oracle 高级主题需要了解 Oracle 的性能优化和故障排除等技术。 七、Oracle 学习资源 * Oracle 官方文档是学习 Oracle 的重要资源。 * Oracle 社区和论坛是学习 Oracle 的重要资源。 * Oracle 书籍和视频课程是学习 Oracle 的重要资源。 八、Oracle 实践经验 * 实践经验是学习 Oracle 的重要部分。 * 实践经验需要了解 Oracle 的安装、配置、设计、开发和管理等方面的技术。 * 实践经验需要了解 Oracle 的高级特性和功能、性能优化和故障排除等技术。 九、Oracle 学习心得 * 学习 Oracle 需要持之以恒和毅力。 * 学习 Oracle 需要了解 Oracle 的基础知识和高级特性。 * 学习 Oracle 需要实践经验和项目经验。 十、Oracle 学习资源推荐 * Oracle 官方文档是学习 Oracle 的重要资源。 * Oracle 社区和论坛是学习 Oracle 的重要资源。 * Oracle 书籍和视频课程是学习 Oracle 的重要资源。 * TianleSoftware Oracle 学习手册是学习 Oracle 的重要资源。
2013-10-06 上传
在Oracle 几年的学习中,做了很多的实验,也遇到了很多的问题, 在这个过程中,积累了一些学习文档。也更新到了blog上。 因为太多,不便于查阅。 根据自己对 Oracle 的理解,把这些 blog 进行了分类,并进行了一些整理,方便自己的查看。 这些文档中有很多内引用借鉴了前辈们的资料和google 上的一些信息。 如:eygle,君三思,谭怀远,陈吉平等前辈们的书籍和 blog。 感谢这些前辈们对中国 DB 事业做出的贡献。 在这里引用的内容也是完全出于学习。 没有其他用途,如有侵犯到版权的问题,请联系我。 我将删除这些信息。 对数据库这块也是在不断的学习,对oracle 的理解也是在不断的变化。在这个过程中,难免有理解错误的地方,或者内容上遗漏的,如果发现了问题,烦邮件给我,我会虚心的学习。并更新该文档。 PS: 有些内容在排版上不太合适,因为很多也是在后期的整理中加上去的。以后有空在调整这些内容的排版了。 目录: TIANLESOFTWARE ORACLE 学习手册 ................................................................... 一. ORACLE 基础知识 ............................................................................................. 1.1 ORACLE OLAP 与 OLTP 介绍 .............................................................................. 1.1.1 什么是 OLTP ............................................................................................. 1.1.2 什么是 OLAP ............................................................................................. 1.1.3 在 OLAP 系统中,常使用分区技术、并行技术 .................................... 1.1.4 分开设计与优化 ...................................................................................... 1.2 索引详解 ........................................................................................................... 1.2.1 索引介绍 .................................................................................................. 1.2.1.1 索引的创建语法 ............................................................................................ 1.2.1.2 索引特点........................................................................................................ 1.2.1.3 索引不足........................................................................................................ 1.2.1.4 应该建索引列的特点 .................................................................................... 1.2.1.5 不应该建索引列的特点 ................................................................................ 1.2.1.6 限制索引........................................................................................................ 1.2.1.6.1 使用不等于操作符(<>、!=) ............................................................ 1.2.1.6.2 使用 IS NULL 或 IS NOT NULL ............................................................... 1.2.1.6.3 使用函数 ............................................................................................... 1.2.1.6.4 比较不匹配的数据类型 ........................................................................ 1.2.1.7 查询索引........................................................................................................ 1.2.1.8 组合索引........................................................................................................ 1.2.1.9 ORACLE ROWID ....................................................................... 1.2.1.10 选择性 ................................................................................. 1.2.1.11 群集因子(Clustering Factor) ................................................ 1.2.1.12 二元高度(Binary height) ...................................................... 1.2.1.13 快速全局扫描 ...................................................................... 1.2.1.14 跳跃式扫描 .......................................................................... 1.2.2 索引分类 ............................................................................. 1.2.2.1 B 树索引 (默认类型) ............................................................. 1.2.2.2 位图索引................................................................................ 1.2.2.3 HASH 索引............................................................................... 1.2.2.4 索引组织表 ............................................................................ 1.2.2.5 反转键索引 ............................................................................ 1.2.2.6 基于函数的索引 .................................................................... 1.2.2.7 分区索引................................................................................ 1.2.2.7.1.本地分区索引(通常使用的索引) .................................. 1.2.2.7.2.全局分区索引 ................................................................ 1.2.2.8 位图连接索引 ........................................................................ 分区表总结 .................................................................................. 1.3.1. 分区表理论知识 ................................................................ 1.3.2 普通表转分区表方法.......................................................... 1.3.2.1 插入: Insert with a subquery method ................................ 1.3.2.1.1 Oracle 11g 的 Interval .................................................. 1.3.2.1.2 Oracle 10g 版本 .......................................................... 1.3.2.2 交换分区:Partition exchange method ................................ 1.3.2.3 使用在线重定义:DBMS_REDEFINITION .............................. 1.3.2.4 使用导出导入 ........................................................................ 1.3.2.4.1 迁移分区表的步骤 ....................................................... 1.3.2.4.2 示例 1:使用 exp/imp .................................................. 1.3.2.4.3 示例 2:使用 expdp/impdp .......................................... 1.3.3 分区表的其他操作.............................................................. 1.3.3.1 添加新的分区 ........................................................................ 1.3.3.2 split 分区拆分 ........................................................................ 1.3.3.3 合并分区 Merge .................................................................... 1.3.3.4 移动分区................................................................................ 1.3.3.5 Truncate分区 .......................................................................... 1.3.3.6 Drop 分区 ............................................. 1.3.4 分区表的索引 .................................... 1.3.4.4.1 Local 本地索引 ........................... 1.3.4.4.2 Global 索引 .................................. 1.3.4.4.3 索引重建问题 ............................ 1.3.5 Oracle 11g 中的分区表 ...................... 1.3.5.1 11g中的分区表新特性 ....................... 1.3.5.1.1 Interval Partitioning ..................... 1.3.5.1.2 System Partitioning ...................... 1.3.5.1.4 Virtual Column-Based Partitioning.................................................... 1.3.5.2 11g 虚拟列实现 按星期分区表 .......................................................... 1.3.5.3 Interval 分区 示例 ................................................................................ 1.3.5.3.1 创建按月分区的分区表 .................................................................. 1.3.5.3.2 创建一个以天为间隔的分区表 ....................................................... 1.4 ORACLE 锁 ..................................................................................................... 1.4.1 锁(Lock) ......................................................................................... 1.4.1.1 锁的概念.................................................................................................. 1.4.1.2 锁的分类.................................................................................................. 1.4.1.2.1. 按用户与系统划分,可以分为自动锁与显示锁 ......................... 1.4.1.2.2. 按锁级别划分,可分为: 排它锁(Exclusive Locks,即 X 锁)和 即 S锁) ......................................................................................................... 1.4.1.2.3 按操作划分,可分为 DML 锁(data locks,数据锁)、DDL 锁( 和 System Locks。 .......................................................................................... 1.4.1.2.4 DML 锁 ........................................................................................... 1.4.1.2.5 DDL 锁(dictionary locks) ........................................................... 1.4.1.2.6 System Locks .................................................................................. 1.4.2 死锁 .................................................................................................... 1.4.3 锁 和 阻塞 ........................................................................................ 1.4.3.1 相关概念.................................................................................................. 1.4.3.2 引起阻塞的几种常见情况 ...................................................................... 1.4.3.2.1 DML 语句 ...................................................................................... 1.4.3.2.2 外键没有创建索引 ....................................................................... 1.4.4 Latch 说明 ........................................................................................... 1.4.4.1 Latch ...................................................................................................... 1.4.4.2 有关 SPin 的说明 .................................................................................. 1.4.4.3 进程获取Latch 的过程 ......................................................................... 1.4.4.4 Latch 和 Lock ........................................................................................ 1.4.4.5 Latch 争用 ............................................................................................ 1.4.4.5.1 共享池中的 Latch争用 ................................................................... 1.4.4.5.2 数据缓冲池 Latch争用 ................................................................... 1.4.4.6 热块产生的原因 .................................................................................... 1.4.4.6.1 表数据块 ......................................................................................... 1.4.4.6.2 索引数据块 ..................................................................................... 1.4.4.6.3 索引根数据块 ................................................................................. 1.4.4.6.4 段头数据块 .................................................................................... 1.4.4.7 检查Latch 的相关 SQL 1.4.4.7.1 查看造成 LATCH BUFFER CACHE CHAINS等待事件的热快 1.4.4.7.2 查询当前数据库最繁忙的 Buffer,TCH(Touch)表示访问次数越高,热点快竞争问题就存在 1.4.4.7.3 查询当前数据库最繁忙的 Buffer,结合 dba_extents 查询得到这些热点 Buffer 来自哪些对象 1.4.4.7.4 如果在 Top 5 中发现 latch free热点块事件时,可以从 V$latch_children 中查询具体的