Oracle高效设计

Oracle高效设计 pdf epub mobi txt 电子书 下载 2026

出版者:机械工业出版社
作者:[美] Thomas Kyte
出品人:
页数:496
译者:钟鸣
出版时间:2006-1
价格:68.00元
装帧:平装
isbn号码:9787111178118
丛书系列:
图书标签:
  • Oracle
  • 数据库
  • 性能
  • 优化
  • 计算机
  • performance
  • Database
  • 计算机科学
  • Oracle
  • 数据库
  • 性能优化
  • 设计
  • 架构
  • SQL
  • 调优
  • 开发
  • 效率
  • 最佳实践
想要找书就要到 小美书屋
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

本书对Oracle及数据库的知识进行了全面深入的讲解,是一本关于Oracle的高级手册。本书从开发应用程序的正确方法角度,讲述Oracle的重要概念和特性,包括:性能工具包,体系结构选择,语句处理,从基于成本的优化器中获得尽可能多的信息,故障排除等内容。还包括如何编写好的Oracle应用程序所涉及的关键问题:高效的管理,高效的设计模式,高效的SQL,高效的PL/SQL程序设计。附录给出了设置和很多常用的脚本。本书内容翔实,实例丰富,语言流畅且浅显易懂,适合作为从事Oracle开发人员的参考手册。

作者简介

Thomas Kyte,oracle专业领域世界上最权威的专家之一。他是oracle核心技术小组(管理、教育和健康)副主席,兼《oracle magazine》及其在线论坛“asktom”专栏作家,撰写过多部设计和构建高性能、可伸缩oracle应用程序的指南。他回答过数以千计的技术问题,也正是这些问题激发了他写作这本书的灵感。

目录信息

译者序
前言
第1章 构建应用程序的正确方法
1.1 团队协作
1.2 阅读资料文档
1.2.1 指南的指南
1.2.2 阅读路线
1.3 避免黑盒综合症
1.3.1 数据库独立与数据库依赖
1.3.2 黑盒综合症的危害
1.4 是数据库而不是一堆数据
1.4.1 使用主键和外部键
1.4.2 测试参考完整性的开销
1.4.3 中间层检查不是万能药
1.5 建立测试环境
1.5.1 用有代表性的数据进行测试
1.5.2 不要用单个用户进行测试
1.5.3 不要在无菌实验室中进行测试
1.6 设计出性能而不是调整出性能
1.6.1 不要使用通用数据模型
1.6.2 设计自己的高效数据模型
1.7 开始就定义性能目标
1.7.1 在清晰明确的标准下工作
1.7.2 随时收集并记录标准
1.7.3 别因为“所有人都知道你应该做”而做某件事情
1.8 测试.测试.再测试
1.8.1 小基准测试
1.8.2 大基准测试
1.9 仪表化系统
1.9.1 追踪asktom.oracle.com
1.9.2 远程调试仪表化
1.9.3 使用dbms_application_info
1.9.4 在pl/sql中使用debug.f
1.9.5 在应用系统中打开sql_trace
1.9.6 使用业内标准的api
1.9.7 建立自己的例程
1.9.8 审计不仅仅是个词
1.10 敢于怀疑权威
1.10.1 当心泛泛的“最好”
1.10.2 怀疑“法定”和“神话”
1.11 不要走捷径
1.12 保持简单
1.12.1 考虑备选方法
1.12.2 让数据库充分发挥自己的能力
1.13 使用已有的功能
1.13.1 我们听说x特性慢
1.13.2 我们听说x特性复杂
1.13.3 我们不想
1.13.4 我们以前不知道
1.13.5 我们希望数据库独立
1.14 本章小结
第2章 性能工具包
2.1 sql * plus
2.1.1 建立sql * plus
2.1.2 定制sql * plus环境
2.1.3 阅读文档
2.2 explain plan
2.2.1 设置explain plan
2.2.2 使用explain plan
2.2.3 如何阅读查询计划
2.2.4 避免explain plan陷阱
2.2.5 使用dbms_xplan和v$sql_plan
2.3 autotrace
2.3.1 建立autotrace
2.3.2 使用autotrace
2.3.3 格式化autotrace的输出
2.3.4 了解autotrace的输出
2.3.5 autotrace输出中感兴趣的内容
2.4 tkprof
2.4.1 启用tkprof
2.4.2 运行丁tkprof
2.4.3 读tkprof报告
2.4.4 各种群体对tkprof的使用
2.5 runstats
2.5.1 建立runstats
2.5.2 使用runstats
2.6 statspack
2.6.1 建立statspack
2.6.2 使用statspack
2.6.3 使用statspack易犯的错误
2.6.4 statspack概览
2.7 dbms_profiler
2.7.1 为什么要使用配置文件管理器
2.7.2 配置文件管理器的资源
2.8 jdeveloper(及调试)
2.9 本章小结
第3章 体系结构选择
3.1 了解共享服务器与专用服务器连接
3.1.1 专用服务器如何工作
3.1.2 共享服务器连接如何工作
3.1.3 关于共享服务器配置的常见错误观点
3.1.4 专用服务器与共享服务器小结
3.2 利用集群
3.2.1 rac如何工作
3.2.2 rac的优点
3.2.3 集群小结
3.3 了解何时使用分区
3.3.1 分区概念
3.3.2 神秘的分区
3.3.3 为什么使用分区
3.3.4 分区小结
3.4 知道何时使用并行操作
3.4.1 并行神话
3.4.2 并行管理
3.4.3 并行查询
3.4.4 并行dml
3.4.5 打造自己的并行
3.4.6 并行处理小结
3.5 本章小结
第4章 高效的管理
4.1 用spfile启动数据库
4.1.1 pfile的问题
4.1.2 spfile如何工作
4.1.3 让数据库使用spfile
4.1.4 保存系统参数的改动
4.1.5 pfile过时了吗
4.1.6 求助.我的spfile坏了.我不能启动了
4.1.7 spfile小结
4.2 让oracle来管理你的数据文件
4.2.1 何时使用omf
4.2.2 omf如何工作
4.2.3 omf小结
4.3 可靠的恢复
4.3.1 备份准则
4.3.2 备份和恢复小结
4.4 使用本地管理的表空间
4.4.1 为什么要废除dmt
4.4.2 在不知道对象会变得有多大时使用系统管理的lmt
4.4.3 在知道对象的最终尺寸时使用统一的区尺寸
4.4.4 关于lmt的某些忠告
4.4.5 lmt和dmt小结
4.5 让oracle管理你的段空间
4.5.1 理解可用列表和可用列表组
4.5.2 pctfree和pctused怎样控制可用列表
4.5.3 assm的案例
4.5.4 assm小结
4.6 让oracle管理回退段
4.6.1 设置undo retention
4.6.2 undo表空间忠告
4.6.3 undo表空间小结
4.7 本章小结..
第5章 语句处理
5.1 理解sql语句的类型
5.2 语句怎样执行
5.2.1 分析
5.2.2 优化和行资源生成
5.2.3 执行
5.2.4 语句执行小结
5.3 查询的处理过程
5.3.1 快速返回的查询
5.3.2 慢速返回的查询
5.3.3 一致性读取
5.4 dml语句的处理
5.5 ddl处理
5.6 使用绑定变量
5.6.1 绑定变量的优点
5.6.2 对java和vb使用绑定变量
5.6.3 每项规则都有例外
5.6.4 绑定变量窥视
5.7 尽可能少做分析
5.7.1 分析的成本
5.7.2 使用pl/sql减少分析
5.7.3 把sql移出触发器以减少分析
5.7.4 准备一次;执行多次
5.8 本章小结
第6章 从基于成本的优化程序获得最大输出
6.1 为什么停用rbo
6.2 使cbo发挥最大的作用
6.2.1 调整optimizer_index_caching和optimizer_index_cost_adj参数
6.2.2 使用system统计数据
6.3 优化cbo
6.3.1 为升级设置compatible
6.3.2 设置db_file_multiblock_read_count以减少全扫描的成本
6.3.3 设置hash_join_enabled控制散列连接
6.3.4 设置optimizer_dynamic_sampling动态收集统计数据
6.3.5 设置offimizer_features_enable控制特性选择
6.3.6 设置optimizer_max_permutations控制排列
6.3.7 设置optimizer_mode选择模式
6.3.8 用query_rewrite_enabled和query_rewrite_integrityt重写查询
6.3.9 用bitmap_merge_area_size、sort_area_size、hash_area_size控制pga内存
6.3.10 对星查询使用star_transformation_enabled
6.3.11 设置影响优化程序的其他几个参数
6.4 使用10 053事件跟踪cbo选择
6.5 本章小结
第7章 高效的模式设计
7.1 基本模式设计原则
7.1.1 让数据库实现数据完整性
7.1.2 使用正确的数据类型
7.1.3 对最经常提的问题进行优化
7.2 表类型概述
7.3 b*树索引集群表
7.3.1 创建群
7.3.2 使用群
7.3.3 群小结
7.4 索引组织表
7.4.1 用iot替代关联表以节省空间
7.4.2 利用iot集中放置随机插入的数据
7.4.3 iot小结
7.5 外部表
7.5.1 建立外部表
7.5.2 修改外部表
7.5.3 将外部表用于直接路径装载
7.5.4 将外部表用于并行直接路径装载
7.5.5 将外部表用于合并
7.5.6 处理外部表的错误
7.6 索引技术
7.6.1 使用fbi——打破常规
7.6.2 使用域索引
7.7 压缩
7.7.1 使用索引键压缩
7.7.2 对于只读或主要是读的表进行压缩
7.7.3 压缩小结
7.8 本章小结
第8章 高效的sql
8.1 编写高效sql所需的知识
8.2 访问路径
8.2.1 全扫描
8.2.2 rowid访问
8.2.3 索引扫描
8.2.4 群扫描
8.3 连接概念
8.3.1 嵌套循环
8.3.2 散列连接
8.3.3 排序合并连接
8.3.4 笛卡儿连接
8.3.5 反连接
8.3.6 全外部连接
8.4 模式问题(物理的)
8.5 真正理解sql
8.5.1 rownum伪列
8.5.2 标量子查询
8.5.3 分析函数
8.6 不调整查询
8.6.1 理解问题
8.6.2 概念验证的例子
8.7 其他sql技术概览
8.8 本章小结
第9章 高效的pl/sql程序设计
9.1 为什么要使用pl/sql
9.1.1 pl/sql是数据操纵的最高效语言
9.1.2 pl/sql。具有可移植性和可重用性
9.2 尽可能少地编写代码
9.2.1 不用程序实现
9.2.2 让代码行数适合于屏幕显示
9.3 使用程序包
9.3.1 程序包的优点
9.3.2 断开依赖链
9.3.3 程序包小结
9.4 使用静态sql
9.4.1 静态sql的优点
9.4.2 寻找替换动态sql的机会
9.4.3 静态sql小结
9.5 批量处理
9.5.1 使用批量处理效果很好时再使用它
9.5.2 对etl操作使用bulk处理
9.5.3 批量处理小结
9.6 返回数据
9.6.1 ref游标的优点
9.6.2 使用ref游标返回结果集
9.7 使用%type和%rowtype
9.7.1 基于表的记录类型
9.7.2 基于游标的记录类型
9.7.3 基于列的数据类型
9.8 使用调用者的权限
9.8.1 调用者权限和多模式
9.8.2 调用者权限的条件
9.9 使查找高效地工作
9.9.1 查找的单行取
9.9.2 查找的批量处理
9.9.3 查找的单语句操作
9.9.4 查找小结
9.10 当心独立事务处理
9.10.1 独立事务处理的条件
9.10.2 独立事务处理会影响数据完整性
9.11 选择使用隐式游标还是显式游标
9.11.1 将隐式游标用于单行选择
9.11.2 对有限行数的结果集使用隐式游标
9.11.3 隐式/显式游标小结
9.12 本章小结
第10章 故障排除
10.1 找出差异
10.1.1 开始收集今天的历史记录
10.1.2 侦探性工作
10.2 一次只更改一样东西
10.3 更改一样东西要有充分理由
10.3.1 有目标
10.3.2 验证你的假设
10.4 能够恢复到更改前的状态
10.5 建立测试用例
10.5.1 测试用例需求
10.5.2 使测试用例尽可能小
10.6 本章小结
附录 设置和一些脚本
· · · · · · (收起)

读后感

评分

认真的看TOM的书,是从那本《Oracle 9i & 10g编程艺术:深入数据库体系结构》开始的,感觉翻译的还不错。几乎是一口气读下来的。掩卷深思,竟然发现自己以前的很多观点和想法在TOM的一个个的小例子面前是片面的或者是错误的。自己仅仅只是把Oracle当做了一个数据的存储,而...  

评分

我也刚看完《oracle9i&10g编程艺术》,内容质量很高,翻译的也不错。但不知道这么书怎么样,看过的评一下呢。

评分

我也刚看完《oracle9i&10g编程艺术》,内容质量很高,翻译的也不错。但不知道这么书怎么样,看过的评一下呢。

评分

我也刚看完《oracle9i&10g编程艺术》,内容质量很高,翻译的也不错。但不知道这么书怎么样,看过的评一下呢。

评分

认真的看TOM的书,是从那本《Oracle 9i & 10g编程艺术:深入数据库体系结构》开始的,感觉翻译的还不错。几乎是一口气读下来的。掩卷深思,竟然发现自己以前的很多观点和想法在TOM的一个个的小例子面前是片面的或者是错误的。自己仅仅只是把Oracle当做了一个数据的存储,而...  

用户评价

评分

**评价四** 这本书的叙事节奏把握得非常老道。它并非那种平铺直叙、缺乏起伏的教科书式写作。相反,它采用了类似“侦探小说”的结构来引导读者。开篇往往会抛出一个看似无解的“工程难题”,激发读者的好奇心和焦虑感。随后,作者不急于给出答案,而是层层剥开问题的历史背景、技术演变,以及前人尝试过的各种错误路径。这种“先困惑,后豁然开朗”的体验,极大地增强了阅读的参与感和心流状态。我常常在不知不觉中,几个小时就过去了,而且读完一个章节后,那种解决了一个难题的成就感是其他书籍难以比拟的。这种对读者学习心理的精准拿捏,使得原本可能枯燥的技术探讨变得引人入胜。它让“学习设计”不再是一项任务,而变成了一场充满悬念和发现的智力探险。这种体验上的愉悦感,是衡量一本好书的隐性但重要的指标。

评分

**评价三** 我是一个对代码风格和可维护性有极高要求的开发者。很多技术书籍的通病在于,虽然内容很深,但代码示例却显得粗糙、缺乏规范性,读起来让人很不舒服。然而,这本书在这方面堪称典范。它所展示的每一个代码片段,都像是一件精心打磨的工艺品。变量命名、函数结构、注释的密度和质量,都严格遵循了业界最顶尖的最佳实践。阅读这些示例代码的过程本身,就是一种沉浸式的学习体验,它潜移默化地提升了我自身的代码素养。更重要的是,作者似乎深谙“设计意图”的表达之道。他不仅仅是展示“这段代码能跑”,而是清晰地传达了“我为什么要这样写”的深层思考。这种对细节的极致追求,反映出作者本人在长期工程实践中积累下来的深刻洞察。每当我需要快速回顾某个复杂设计模式的正确实现方式时,我总会回到这本书中,因为我知道这里的代码是可靠、健壮且易于理解的。它教会了我如何写出不仅能满足功能需求,更能经受住时间考验的优雅代码。

评分

**评价五** 这本书最让我感到意外和惊喜的是,它并没有过度沉溺于当下最热门、最时髦的技术栈,反而将重点放在了那些跨越技术周期、具有永恒价值的“设计原则”上。在技术浪潮日新月异的今天,很多书籍很快就会过时,因为它们紧密绑定了某个特定版本的框架或工具。然而,本书所探讨的模块化思想、解耦策略、边界划分的艺术,这些核心思想几乎是平台无关的。我发现,无论我今天在用什么新的云计算服务、什么新的编程语言,这些设计哲学依然是指导我做出正确决策的灯塔。作者似乎刻意避开了那些容易引起争议的“流行趋势”,转而专注于提炼那些经过数十年工业界检验的黄金法则。这使得这本书具备了极高的“保质期”。它不仅仅是指导我当前的工作,更是为我未来十年的职业发展奠定了坚实的、不会被技术迭代轻易动摇的理论基石。这是一部值得反复阅读、每次都能从中汲取新营养的案头宝典。

评分

**评价一** 这本书的装帧设计着实让人眼前一亮,那种沉稳而又不失现代感的封面字体排布,初拿到手就给人一种“有料”的感觉。我记得当时是在一个技术书店里偶然翻到的,它的内容结构安排得极为清晰,即便只是快速翻阅目录,也能感受到作者在知识体系构建上的深思熟虑。特别是对于那些初涉某一领域,希望建立稳固基础的读者来说,这种循序渐进的章节划分简直是福音。我尤其欣赏它在理论阐述之后的紧密结合的案例分析。这些案例并非空中楼阁式的理论示范,而是源于实际项目中的痛点和解决方案,读起来非常接地气,让人感觉自己正在跟随一位经验丰富的导师进行实战演练。书中对一些核心概念的解释,往往能用最简洁的语言触及问题的本质,避免了冗长晦涩的学术腔调。例如,在讲解复杂算法的优化路径时,作者巧妙地引入了类比,使得即便是技术背景稍弱的读者也能迅速抓住重点。这种“化繁为简”的能力,是衡量一本技术书籍价值的重要标准,而这本书在这方面做得非常出色。它不仅仅是一本工具书,更像是一部引导读者思维升级的哲学指南,让人在阅读过程中不断反思自己的现有工作流程和设计理念。

评分

**评价二** 说实话,我最看重的是一本书能否提供“可复用”的知识模块,而不是一堆转瞬即逝的“小技巧”。这本书在这点上完全满足了我的期待。它构建了一个非常扎实的知识框架,使得我无论是在面对遗留系统的重构挑战,还是在规划全新的架构设计时,都能从中找到可以抽离出来并应用到不同场景的“设计范式”。我记得有一次,我们团队在处理一个高并发下的数据一致性问题,陷入了僵局。我翻阅这本书时,偶然发现其中关于“分布式事务处理”的章节,作者没有直接给出某个特定数据库的SQL优化方案,而是深入探讨了不同一致性模型背后的权衡利弊。这种高度抽象和原理性的讲解,让我得以跳出具体的技术栈限制,从更底层的逻辑层面找到了突破口。这种“授人以渔”的教育方式,远比提供一堆即时生效的补丁更有价值。而且,书中引用的参考资料和相关文献列表也做得非常详尽,为我后续的深入研究指明了清晰的路径,这对于需要持续学习的工程师来说,是极大的加分项。这本书真正做到了将“设计”提升到“工程艺术”的层面。

评分

还是针对Oracle高级人员用的,不过看过还是有收获

评分

一本不错的书偏向开发,可惜给翻译的狗屁不通

评分

十多年前,我说,Tom是天才,十多年后,我还说,Tom是天才。想必是我退步了。

评分

Tom 经典之作

评分

还是针对Oracle高级人员用的,不过看过还是有收获

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2026 book.quotespace.org All Rights Reserved. 小美书屋 版权所有