图书介绍

ORACLE DBA工作笔记 运维数据迁移与性能调优PDF|Epub|txt|kindle电子书版本网盘下载

ORACLE DBA工作笔记 运维数据迁移与性能调优
  • 杨建荣编 著
  • 出版社: 北京:中国铁道出版社
  • ISBN:9787113218977
  • 出版时间:2016
  • 标注页数:600页
  • 文件大小:67MB
  • 文件页数:618页
  • 主题词:

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

ORACLE DBA工作笔记 运维数据迁移与性能调优PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1篇 数据库运维篇1

第1章 数据库安装配置1

1.1 安装前的准备1

1.2 安装数据库软件5

1.2.1 方法1:OUI安装6

1.2.2 方法2:静默安装8

1.2.3 方法3:克隆安装11

1.2.4 诊断案例:克隆安装后无法登录的问题13

1.3 创建/删除数据库16

1.3.1 方法1:DBCA图形建库16

1.3.2 方法2:手工建库18

1.3.3 方法3:DBCA静默建库22

1.3.4 方法4:OMF建库22

1.3.5 诊断案例:create database语句在10g、11g中的不同23

1.3.6 创建数据库后的补充工作26

1.3.7 删除数据库的步骤29

1.4 关于SYSDBA、SYSOPER、DBA的区别和联系29

第2章 常用工具和问题分析34

2.1 SQL*Plus使用及常见问题34

2.1.1 SQL*Plus使用细则34

2.1.2 SQL*Plus无法启动的常见原因41

特殊问题:乱码导致的SQL*Plus无法启动的问题43

特殊问题:使用strace诊断奇怪的SQL*Plus登录问题44

2.2 解析exp/imp及常见问题47

2.2.1 exp/imp使用场景及示例47

2.2.2 exp/imp使用常见问题50

诊断案例:生产系统exp无法使用的紧急诊断和修复55

诊断案例:外部表的导入导出问题57

诊断案例:IMP-00013问题及解决方法58

诊断案例:使用strace分析exp中buffer设置的奇怪问题60

经验分享:你可能不了解的dump文件63

2.3 解析Datapump及常见问题66

2.3.1 Datapump使用场景及示例66

2.3.2 只言片语分析Datapump的工作原理68

诊断案例:inpdp异常中断导致的问题70

诊断案例:使用impdp选项不当导致的数据丢失73

第3章 服务连接配置76

3.1 监听配置与客户端配置简介76

3.2 网络服务配置78

3.2.1 网络配置细则与实践78

诊断案例:Session跟踪失效的问题和原因82

3.2.2 监听配置文件格式探究——一个空格的威力84

3.2.3 RAC中的TAF的配置88

3.2.4 RAC中的SCAN的配置90

3.2.5 通过单例模式模拟RAC连接93

3.3 监听器无法启动的几个原因94

诊断案例:使用strace分析TNS-12543的案例96

第4章 数据库启停和宕机问题99

4.1 数据库启停的问题分析99

4.2 数据库无法启动案例100

诊断案例:数据库参数设置不当导致无法启动的问题100

诊断案例:服务器增加内存后无法重启数据库的问题及解决方案102

诊断案例:数据库shutdown之后无法启动的问题103

诊断案例:RAC节点无法启动的ORA-29702问题及分析105

诊断案例:连续出现的RAC节点问题108

4.3 数据库无法登录问题分析110

4.4 数据库无法登录案例111

诊断案例:归档空间不足导致的数据库无法登录问题111

诊断案例:Session Leak导致的数据库无法登录问题115

诊断案例:undo缺失导致的数据库无法登录问题118

4.5 数据库宕机问题和原因分析119

4.6 数据库宕机问题案例119

诊断案例:一条SQL语句导致的数据库宕机问题及分析119

诊断案例:存储导致的数据库宕机问题及分析121

诊断案例:I/O问题导致的数据库突然宕机的问题及分析124

诊断案例:数据库导致突然宕机的问题及解决126

第5章 容灾与备份恢复132

5.1 备份恢复应用及实践132

5.1.1 归档模式下的四种完全恢复场景132

5.1.2 RMAN中三个不完全恢复场景137

实验1:使用句柄实现特定场景的无备份恢复141

实验2:关于DUAL表的破坏性测试145

5.2 闪回应用及实践149

5.2.1 关于delete、drop、truncate异同和无备份恢复场景149

5.2.2 使用闪回查询备份数据152

5.2.3 使用Flashback Query巧妙抽取指定数据154

实战案例:巧用Flashback Database实现灵活的数据回滚155

实战案例:巧用Flashback Database实现灵活的数据切换156

5.3 Data Guard搭建与应用160

5.3.1 常见的Data Guard隐患161

5.3.2 11g Data Guard搭建实践163

5.3.3 论Oracle备库的设计方案169

5.3.4 实用至上的Snapshot Standby特性171

实践案例:Data Guard备库中的几个数据文件问题175

实践案例:Data Gua…d备库的数据文件的迁移实战179

诊断案例:由Drop Datafile导致的Oracle bug182

诊断案例:一个Oracle bug的手工修复185

诊断案例:11g备库无法开启ADG的原因分析188

第6章 监控管理和故障处理191

6.1 Zabbix、Orabbix简介191

6.2 Zabbix Agent部署191

6.3 Orabbix的部署194

6.4 浅谈Zabbix和Grid Control的优劣196

6.5 Orabbix定制监控Oracle的简单配置197

实践案例:Orabbix结合Python发送图形报表200

实践案例:Zabbix中配置Data Guard的监控204

6.6 两条腿走路更稳当——硬件监控很有必要206

6.7 运维平台的建设思考——元数据管理208

6.8 监控盲点与诊断案例209

监控盲点:由DUAL导致的一个潜在的监控问题210

诊断案例:备库CPU使用异常优化212

诊断案例:两条报警信息结合分析DG问题215

诊断案例:监控反被监控误——一则Orabbix报警的分析221

诊断案例:自定义监控项快速定位问题223

诊断案例:CPU报警信息的分析225

第2篇 数据迁移篇230

第7章 数据库升级230

7.1 数据库升级常用方法与准备工作230

7.2 Oracle10g升级至11g完整呈现231

7.2.1 准备流程图231

7.2.2 10g升级至11g需要考虑的参数优化232

7.2.3 Oracle10g升级至11g准备工作详细步骤233

7.2.4 升级流程示意图236

7.2.5 升级后需要考虑的补充工作237

7.2.6 实战汇总:Oracle 10g升级11g过程中常见问题及解决方案238

7.3 升级后常见问题与解决方案243

7.3.1 问题分析:关于Oracle Invalid Components问题的解决243

7.3.2 问题分析:10g升级至11g后数据库无法启动的问题246

7.3.3 问题分析:10g升级至11g后exp启用consistent=y的问题248

7.3.4 问题分析:查询user_synonyms超时的问题254

7.3.5 问题分析:impdp 10g/11g问题解决255

7.3.6 问题分析:升级后数据库日志里的外部表错误257

第8章 数据迁移及问题处理261

8.1 数据迁移工具和使用场景分析261

8.2 利用SQL*Loader进行数据迁移263

8.2.1 关于SQL*Loader-805问题的解决263

8.2.2 SQL*Loader加载性能问题的排查265

8.2.3 Excel文件内容导入数据库的问题及解决267

诊断案例:生产环境SQL*Loader加载性能问题及分析269

8.3 传输表空间275

8.4 分区表迁移相关277

8.4.1 分区表的水平、垂直切分278

8.4.2 关于分区表的move操作279

8.4.3 批量转换分区表为普通表281

8.5 外部表282

8.5.1 外部表简单总结282

诊断案例:巧用外部表避免大量的insert284

诊断案例:巧用外部表备份历史数据286

诊断案例:通过外部表改进一个烦琐的大查询289

8.6 其他迁移方式292

8.6.1 数据库文件的迁移292

8.6.2 Data Guard环境中的数据文件迁移方式对比295

8.6.3 关于move tablespace的问题总结298

第9章 数据迁移之外部表实战300

9.1 失败的经验总结:数据迁移问题汇总300

9.1.1 非空约束导致的数据加载失败301

9.1.2 外键数据差异导致的约束无法启用301

9.1.3 网络问题导致数据加载中断301

9.1.4 约束问题导致Datapump加载回滚302

9.1.5 undo不足的困扰302

9.1.6 冲突数据不易展现302

9.1.7 sequence冲突检查303

9.1.8 加载LOB数据的假并行303

9.1.9 数据乱码的影响303

9.1.10 数据转储文件不可读/不易读303

9.1.11 大分区表的加载性能问题304

9.2 外部表方案的产生304

9.2.1 SQL*Loader和ORACLE_DATAPUMP性能大比拼304

9.2.2 海量数据迁移之通过shell脚本估算数据量305

9.2.3 数据迁移前的数据库检查和建议308

9.2.4 数据迁移前的系统检查313

小技巧:怎样突破表名30个字符的限制315

小技巧:使用shell生成状态报表317

9.3 数据抽取318

9.3.1 外部表切分原理319

9.3.2 抽取方式1:使用utl_file做选择性数据导出321

9.3.3 抽取方式2:海量数据迁移之外部表并行抽取324

9.3.4 抽取方式3:海量数据迁移之分区并行抽取327

9.3.5 抽取方式4:海量数据迁移之分区并行切分331

9.3.6 抽取方式5:海量数据迁移之通过rowid切分大表332

小技巧:海量数据迁移之使用shell启用多个动态并行336

9.4 数据预检查338

9.4.1 海量数据迁移之冲突数据筛查339

9.4.2 数据迁移判断非空约束340

小技巧:使用shell进行日志分析342

小技巧:使用shell脚本巧妙统计文件344

9.5 数据加载345

9.5.1 海量数据迁移之外部表加载345

9.5.2 巧用Parallel极速提升数据加载速度348

9.5.3 海量数据迁移之使用分区并行切分导入350

9.5.4 海量数据迁移之分区表批量insert性能改进352

9.6 可能碰到的数据修复问题352

9.6.1 使用错误日志修复数据的利弊353

诊断案例:数据紧急修复之启用错误日志355

9.6.2 人为操作失误的分析和应对356

9.7 数据迁移经验总结358

9.7.1 海量数据迁移之误操作和防范建议358

9.7.2 数据迁移需要考虑的问题360

第3篇 数据库优化篇362

第10章 优化工具简介和定制362

10.1 AWR简介362

10.1.1 AWR的常用功能363

10.1.2 解析AWR中的CPU信息367

10.1.3 使用shell定制AWR脚本370

10.1.4 强大的AWR Format373

小技巧:使用AWR来分析Session Leak问题375

实例分析:一份AWR报告分析的思路376

10.2 ASH380

10.2.1 ASH中的数据字典基表380

10.2.2 通过shell定制ASH脚本383

10.3 ADDM385

10.3.1 使用shell定制ADDM脚本385

诊断案例 通过ADDM明确I/O问题387

10.4 SQL Profile简介389

10.4.1 SQL Profile的使用功能389

10.4.2 使用SQLr手工创建SQL Profile393

10.4.4 性能下降的不定时炸弹——过旧的SQL Profile400

10.5 SQL Monitor的功劳401

10.5.1 SQL Monitor的使用功能401

10.5.2 OSM的改进点和简单定制403

10.6 数据字典405

10.6.1 数据字典管理405

实例诊断:数据字典中的细节问题406

诊断案例:关于dba_data_files无法访问的一个小问题409

10.7 自定义脚本410

10.7.1 关于Session Leak的问题分析410

诊断案例:关于ORA-00020问题的反思413

10.7.2 高级开发语言定制,量力而行414

第11章 数据库实例调优417

11.1 调整数据库参数417

诊断案例:关于修改数据库参数的测试417

11.2 内存组件调整421

诊断案例:关于纠结的RECYCLE Pool的设置426

诊断案例:分区表放入KEEP Pool、RECYCLE Pool的问题及解析427

11.3 等待事件分析430

诊断案例:关于等待事件“read by other session”431

诊断案例:关于enq:TX-allocate ITL entry的问题分析434

11.4 日志分析调优437

诊断案例:由一条日志警告所做的调优分析437

诊断案例:ORA-17500 ODM err的问题排查440

诊断案例:alert日志中一条ORA警告信息的分析441

11.5 分区表优化443

诊断案例:通过分区键值发现性能问题443

经验分享:修改分区表的问题总结445

11.6 需要重视的并发447

第12章 系统调优451

12.1 I/O问题诊断451

12.1.1 Orion的简单部署和测试452

诊断案例:启用ODM极速调优I/O455

诊断案例:一次数据库响应缓慢的问题排查459

12.2 通过Linux命令诊断性能问题460

12.2.1 那些极度危险的Linux命令461

12.2.2 一些“简单”的Linux命令464

诊断案例:Crontab导致CPU异常的问题分析及处理471

诊断案例:服务器进程异常的原因分析474

12.3 内核参数优化诊断477

诊断案例:Linux Kernel引发的数据库连接问题478

诊断案例:Linux Kernel引发的Data Guard问题481

第13章 SQL优化前奏和SQL审核487

13.1 SQL优化前奏487

13.1.1 SQL的查询转换487

13.1.2 通过错误的SQL来测试推理SQL的解析过程494

诊断案例:从查询转换的角度来调优SQL496

13.1.3 聚簇因子和执行计划的联系501

13.1.4 常见的三种表连接504

13.1.5 Oracle中的半连接508

13.1.6 Oracle中的反连接510

诊断案例:一条运行了3天的“简单”的SQL514

13.1.7 理解Consistent Gets515

13.1.8 读懂执行计划中“%CPU”的含义520

13.2 解析索引523

13.2.1 关于索引的内部信息524

13.2.2 关于索引的访问模式526

13.2.3 索引和空值的恩恩怨怨529

13.2.4 很多人比较纠结的约束和索引的关系533

诊断案例:索引列顺序导致的性能问题537

13.2.5 索引进阶之虚拟索引540

13.2.6 索引进阶之不可见索引543

13.3 SQL需求审核547

13.3.1 关于评审开发人员的SQL语句549

诊断案例:通过ORA错误反思SQL语句规范551

诊断案例:记一次数据同步需求的改进和实践552

第14章 SQL优化技巧558

14.1 常规SQL优化技巧558

14.1.1 SQL优化中的简化559

诊断案例:简化SQL中的子查询559

诊断案例:通过图表简化表SQL中的表关联560

14.1.2 统计信息是SQL优化的基础563

诊断案例:物化视图查询优化之统计信息分析563

14.1.3 索引是SQL优化的催化剂566

诊断案例:Union语句中的全表扫描优化566

14.1.4 并行加速数据处理569

诊断案例:查看并行进程的简单信息570

诊断案例:通过图表分析Oracle的Parallel性能572

诊断案例:使用dbms_parallel_execute来加速DML的并行576

诊断案例:由一条SQL语句导致的系统I/O问题579

14.2 其他SQL优化技巧582

14.2.1 敢于质疑582

优化案例:质疑一条运行已久的SQL语句582

14.2.2 学会变通,变通则达587

优化案例:验证表中有无数据的方法比较588

优化案例:递归查询语句的优化590

优化案例:PL/SQL和SQL之间的转换592

14.2.3 使用Hint594

优化案例:使用Hint来调优SQL语句595

14.2.4 结合业务优化是王道597

优化案例:结合业务优化全表扫描598

热门推荐