查看: 142809|回复: 84

【大话IT】击破Oracle壁垒:深入Oracle内核技术揭秘

[复制链接]
认证徽章
论坛徽章:
127
茶鸡蛋
日期:2012-01-16 14:24:41鲜花蛋
日期:2012-06-06 14:48:18双黄蛋
日期:2013-01-07 21:07:482013年新春福章
日期:2013-02-25 14:51:24优秀写手
日期:2013-12-18 09:29:082014年新春福章
日期:2014-02-18 16:44:08马上有对象
日期:2014-02-18 16:44:08马上加薪
日期:2014-03-18 09:57:11马上有车
日期:2014-03-20 16:13:24马上有房
日期:2014-03-20 16:14:11
发表于 2014-10-22 11:16 | 显示全部楼层 |阅读模式

美国有一句著名的谚语:如果上帝关闭了一扇门,他会为你打开一扇窗。美国还有一个有名的关于Oracle的笑话:上帝和埃里森的区别就是,上帝不认为自己是埃里森。无论上帝怎么想,埃里森肯定认为自己是上帝,至少,是数据库界的上帝。这位数据库界的上帝所开创的著名的Oracle数据库软件是闭源的,对于想研究Oracle的DBA来说,相当于关上了一扇门。但同时Oracle中提供大量的DUMP命令,这又相当于为DBA打开了一扇窗。但现在,这扇窗正在慢慢关闭。在“门”、“窗”都没有的大环境下,或许可以选择把墙给凿了。本期话题,我们一起来凿穿墙壁,探讨Oracle内核技术的秘密吧!

同时本期话题我们邀请了《Oracle内核技术揭密》作者吕海波老师坐镇本期活动,为大家解答疑难问题,欢迎大家积极互动。


话题讨论:

1.什么时候使用统一区大小,什么时候使用系统管理区大小呢?

2.在表空间级别有碎片吗?是否少到可以忽略?

3.一个块的大小最常见是8KB,每个块是由管理信息和用户数据两部分信息组成的,如果删除了一行,再回滚,行的位置会变吗?如果删除后提交再插入呢?行的位置会变吗?为什么?

4.一旦Oracle出现问题,DBA会忙碌起来了。调优、排故大都是从原理的角度分析问题可能出现在哪个环节。面对庞大的Oracle,我们有哪些最常用的重要工具呢?

5.在线日志的切换引起的是完全检查点还是增量检查点?

6.如果数据库所在主机掉电,或者磁盘故障,或者“无意地”删除了一个表,Oracle会使用在线重做日志将系统恢复到掉电前的那个时刻。您是否遇到过类似的场景?能否结合您的经历分享下在Oracle 数据库日志文件的管理方面的经验技巧?


活动时间:2014年10月22日-11月10日


活动奖励:选取最佳会员3名,赠送《Oracle内核技术揭密》技术图书一本

书名:《Oracle内核技术揭密》

简介:《Oracle内核技术揭密》是首本国内作者深入剖析Oracle原理的技术书籍。虽以内部原理为主线,但又不乏很多实际的应用案例,希望读者可以将学到的原理与实际应用相结合,提高对Oracle的运维能力。

oracle.jpg

对数据库性能优化感兴趣的朋友可以参加2014年第四届Oracle技术嘉年华,大会特别安排了三大专场,分会场“端到端性能管理之数据库优化”、分会场“端到端性能管理之数据库RAC优化实践”、分会场“端到端性能管理之SQL优化”。


本届大会将于11月14日-15日在北京五洲皇冠国际酒店隆重召开!大会以“数据库技术企业应用最佳实践”为主题,集结了Oracle数据库领域行业的顶尖专家。作为最大规模的Oracle领域的技术盛会,本届大会预计参会人数超过千人,目前大会处于门票限时免费申请中。报名从速,请关注官网:http://otn.itpub.net/

96080-0922.jpg


获奖名单:2009532140、ses19828、www_xylove

详细信息将由ITPUB运营团队 与您联系



论坛徽章:
14
福特
日期:2013-07-31 12:37:26水瓶座
日期:2016-01-12 08:52:14巨蟹座
日期:2015-08-20 15:28:412015年新春福章
日期:2015-03-06 11:59:47暖羊羊
日期:2015-03-04 14:54:57马上有房
日期:2014-11-18 09:25:48优秀写手
日期:2014-10-21 06:00:13马上加薪
日期:2014-10-20 12:04:08三菱
日期:2013-10-15 17:48:46Jeep
日期:2013-09-12 17:40:27
发表于 2014-10-22 11:26 | 显示全部楼层
3、delete后rollback,row的位置不会发生改变;delete、commit,然后insert的row位置有可能发生改变,因为这是新的一行数据。
5、切换日志触发的是增量检查点。

使用道具 举报

回复
论坛徽章:
70
夏利
日期:2013-09-29 21:02:15天蝎座
日期:2016-03-08 22:25:51嫦娥
日期:2014-03-04 16:46:45ITPUB年度最佳技术原创精华奖
日期:2014-03-04 16:19:29马上加薪
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:14马上有车
日期:2014-02-18 16:41:11
发表于 2014-10-22 12:07 | 显示全部楼层
本帖最后由 vage 于 2014-10-22 12:14 编辑
土豆X 发表于 2014-10-22 11:26
3、delete后rollback,row的位置不会发生改变;delete、commit,然后insert的row位置有可能发生改变,因为这 ...

土豆兄是否可以先总结一下增量检查点的机制?

使用道具 举报

回复
认证徽章
论坛徽章:
360
生肖徽章:虎
日期:2014-09-11 11:03:11生肖徽章:兔
日期:2014-09-11 11:03:11秀才
日期:2017-07-11 13:54:02生肖徽章:羊
日期:2015-01-29 12:31:21生肖徽章:马
日期:2015-01-27 12:39:44生肖徽章:牛
日期:2015-01-27 11:12:49生肖徽章:狗
日期:2014-09-11 11:03:11生肖徽章:猴
日期:2014-09-11 11:03:11生肖徽章:鸡
日期:2014-08-08 21:11:38生肖徽章:鼠
日期:2014-09-11 11:03:11
发表于 2014-10-22 12:20 | 显示全部楼层
支持vage,求书一本

使用道具 举报

回复
求职 : 数据库管理员
招聘 : Java研发
认证徽章
论坛徽章:
6348
ITPUB9周年纪念徽章
日期:2014-05-02 10:36:402011新春纪念徽章
日期:2014-12-29 12:11:142010广州亚运会纪念徽章:卡巴迪
日期:2014-08-06 08:44:252012新春纪念徽章
日期:2014-12-29 12:11:142013年新春福章
日期:2014-12-29 12:11:14马上有车
日期:2014-12-29 12:11:14马上有房
日期:2014-12-29 12:11:14马上有钱
日期:2014-12-29 12:11:14马上有对象
日期:2014-12-29 12:11:14马上加薪
日期:2014-12-29 12:11:14
发表于 2014-10-22 12:26 | 显示全部楼层
本帖最后由 2009532140 于 2014-11-8 15:55 编辑

1.什么时候使用统一区大小,什么时候使用系统管理区大小呢?
使用视图可以查看数据库到底使用的是什么方式来管理的extent:
select tablespace_name, extent_management, allocation_type from dba_tablespaces;
从本地的查询结果可以得知,系统使用的表空间来看都是autoallocate
而用户使用的表空间:既可以是uniform,也可以是autoallocate。
查阅大师们的著作来看,基本都支持试用uniform 的管理方式,用来减少表空间碎片。

2.在表空间级别有碎片吗?是否少到可以忽略?

可以存在碎片,特别是autoallcate 来管理的表空间:
我们所知道她的空间分配策略:
table—size        extent-size
<64k-----------------------64 k
>1MB-----------------------1  MB
>64MB----------------------8  MB
1000MB---------------------64 MB
在在大型数据库中,很多表都超过G,那么分配的寻找表空间中最大的自由范围来使用。
那么,越来越多的离散的、分隔的、较小的自由空间碎片。
如何判断数据库是否可能存在碎片一般使用free space fragmentation index 来直观的体现。
计算公式如下:100*sqrt(max(extent)/sum(extents))*1/sqrt(sqrt(count(extents)))
如果存在的话,可以手动合并:alter tablespace user coalesce;
系统的SMON 也会根据pctincrease 来自动合并。

3.一个块的大小最常见是8KB,每个块是由管理信息和用户数据两部分信息组成的,如果删除了一行,再回滚,行的位置会变吗?
如果删除后提交再插入呢?行的位置会变吗?为什么?
【1】不会变
【2】删除之后提交再插入会变

4.一旦Oracle出现问题,DBA会忙碌起来了。调优、排故大都是从原理的角度分析问题可能出现在哪个环节。面对庞大的Oracle,我们有哪些最常用的重要工具呢?
【1】 nmon
【2】 awr  
【3】 sqlhc
【4】 strace

5.在线日志的切换引起的是完全检查点还是增量检查点?

6.如果数据库所在主机掉电,或者磁盘故障,或者“无意地”删除了一个表,Oracle会使用在线重做日志将系统恢复到掉电前的那个时刻。您是否遇到过类似的场景?
能否结合您的经历分享下在Oracle 数据库日志文件的管理方面的经验技巧?
【1】合理的日志文件块大小,
【2】日志文件大小适中,日志切换时间大约不小于20分钟即可
【3】日志的存放位置与合理的冗余以便数据恢复

使用道具 举报

回复
求职 : 数据库管理员
招聘 : Java研发
认证徽章
论坛徽章:
6348
ITPUB9周年纪念徽章
日期:2014-05-02 10:36:402011新春纪念徽章
日期:2014-12-29 12:11:142010广州亚运会纪念徽章:卡巴迪
日期:2014-08-06 08:44:252012新春纪念徽章
日期:2014-12-29 12:11:142013年新春福章
日期:2014-12-29 12:11:14马上有车
日期:2014-12-29 12:11:14马上有房
日期:2014-12-29 12:11:14马上有钱
日期:2014-12-29 12:11:14马上有对象
日期:2014-12-29 12:11:14马上加薪
日期:2014-12-29 12:11:14
发表于 2014-10-22 12:27 | 显示全部楼层
另外,pipi 的的一段话引用的这本书吧

使用道具 举报

回复
认证徽章
论坛徽章:
277
马上加薪
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:14马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11版主9段
日期:2012-11-25 02:21:03ITPUB年度最佳版主
日期:2014-02-19 10:05:27现任管理团队成员
日期:2011-05-07 01:45:08
发表于 2014-10-22 14:27 | 显示全部楼层
路过,纯支持。

使用道具 举报

回复
认证徽章
论坛徽章:
86
秀才
日期:2015-09-21 09:46:16目光如炬
日期:2014-07-28 06:00:03马上有钱
日期:2014-06-16 15:55:42马上有房
日期:2014-06-16 15:55:422014年世界杯参赛球队: 伊朗
日期:2014-06-13 11:29:242014年世界杯参赛球队:巴西
日期:2014-06-06 14:36:14马上有钱
日期:2014-04-04 13:51:21马上加薪
日期:2014-04-04 13:35:40马上有房
日期:2014-02-18 16:42:022014年新春福章
日期:2014-02-18 16:42:02
发表于 2014-10-22 14:37 | 显示全部楼层
本帖最后由 buptdream 于 2014-10-22 15:16 编辑

日志切换有可能触发增量检查点,但不是增量检查点

使用道具 举报

回复
论坛徽章:
14
福特
日期:2013-07-31 12:37:26水瓶座
日期:2016-01-12 08:52:14巨蟹座
日期:2015-08-20 15:28:412015年新春福章
日期:2015-03-06 11:59:47暖羊羊
日期:2015-03-04 14:54:57马上有房
日期:2014-11-18 09:25:48优秀写手
日期:2014-10-21 06:00:13马上加薪
日期:2014-10-20 12:04:08三菱
日期:2013-10-15 17:48:46Jeep
日期:2013-09-12 17:40:27
发表于 2014-10-22 14:37 | 显示全部楼层
vage 发表于 2014-10-22 12:07
土豆兄是否可以先总结一下增量检查点的机制?

V哥,我是新手,增量检查点真的不清楚。但题目问的“是完全检查点还是增量检查点”,我只知道不是完全检查点,所以就选了增量检查点。

使用道具 举报

回复
认证徽章
论坛徽章:
86
秀才
日期:2015-09-21 09:46:16目光如炬
日期:2014-07-28 06:00:03马上有钱
日期:2014-06-16 15:55:42马上有房
日期:2014-06-16 15:55:422014年世界杯参赛球队: 伊朗
日期:2014-06-13 11:29:242014年世界杯参赛球队:巴西
日期:2014-06-06 14:36:14马上有钱
日期:2014-04-04 13:51:21马上加薪
日期:2014-04-04 13:35:40马上有房
日期:2014-02-18 16:42:022014年新春福章
日期:2014-02-18 16:42:02
发表于 2014-10-22 15:18 | 显示全部楼层
删除了一行,再回滚,行的位置不变 。如果删除后提交再插入行的位置会变

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 
京ICP备09055130号-4  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表