- 1、本文档共66页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
05存储管理ppt课件
Oracle数据块的头部 1、记录了当前该数据块所属的segment的类型(数据或者索引) 2、数据块的地址信息 3、ITL(interested transaction list)槽 每当一个事务要更新数据块里的数据的时候,必须先在数据块的头部获取一个可用的ITL槽,然后将当前的事务ID、事务所使用的UNDO数据块的地址、SCN号以及当前事务是否提交的标记等信息注册到ITL槽里 只有占用槽的事务提交或者回滚以后,别的事务才能够获取这个ITL槽 事务在获取ITL槽的时候,发现所有的ITL槽都被使用,于是动态的创建一个新的ITL槽 定义segment的ITL槽的初始数量和最大数量 两个参数决定:inittrans、maxtrans 默认表的inittrans是1、索引的maxtrans是2 将表的initrans增加到10 我们在学习这些参数的时候,最主要的目的就是在看错误日志的时候,在看一些调优方案的时候,当他们提到这些具体的细节的地方,我们能够有所反应,判断一些事情。觉察出一些解决的办法。 这些参数和具体的细节,并不能帮助我们去做什么事情。 数据块的头部 4、行目录 记录了每一行相对于起点的位移量 这样我们在读取行的时候,才能够确认位置所在 数据行是从数据块的底部开始插入的,空间不断的上涨 数据块头部则是从数据块的顶部开始插入,空间不断的向下增长 这种方式是为了充分的利用空间 增长方向 数据块头部 可用空间 数据行 * 因为每次涉及的只是一些位,操作起来非常的方便。 从Oracle9i开始,就支持本地管理表空间,我们不要再使用字典管理表空间。 * 组织成索引状,主要是为了管理的方便,所有的BMB组织在了一起,检索的时候,也非常的容易 主要是为了组织和检索 转移表空间的方法 1、只能使用命令行,不能使用dbcontrol 2、分为两种 转移非system表空间 转移system表空间 对于非系统表空间,可以采用上面的方式。 对于system表空间 临时表空间和临时表空间组 1、临时表空间主要用来存放用户的临时数据,例如排序数据 2、Oracle10g中引入了临时表空间组的概念 1、临时表空间组是一组临时表空间 2、临时表空间组和临时表空间的名字不能相同 3、不能显式的创建和删除临时表空间组,因为临时表空间组中必须 要有成员,当第一个临时表空间被分配给临时表空间组的时候,临 时表空间组自动的创建,当最后一个临时表空间从临时表空间组退 出的时候,临时表空间组自动删除,这样保证了临时表空间组总是 有成员。 使用临时表空间组的好处 1、同一个用户,在不同的session里可以使用不同的临时表空间 每一个用户有一个默认的临时表空间,同一个用户登陆多个session的时候,如果不使用临时表空间组,那么所有的session使用同一个临时表空间,容易产生瓶颈问题。 2、在并行操作中,不同的从属进程可以使用不同的临时表空间 3、在数据库从面可以同时指定多个默认临时表空间 默认临时表空间组的出现,主要是为了分散用户对默认临时表空间的集中使用,通过将对临时表空间的使用分散到多个临时表空间上,提高了性能 ALTER TABLESPACE TEMP TABLESPACE GROUP TEMPGROUP ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMPGROUP 1、将临时表空间temp放置到临时表空间组tempgroup中去 2、临时表空间组tempgroup创建成功 3、将默认表空间设置为tempgroup(这是一个临时表空间组) 我们可以创建多个临时表空间,然后放置到默认临时表空间组中去,这样就可以负载临时表空间。 非默认数据块大小的表空间 1、Oracle9i开始,支持多个尺寸的表空间 2、OLTP应用中,短小、小数据量的事务较多,建议使用较小的数据块,一般不要超过8K 3、DSS或者数据仓库中,事务都比较大,涉及的数据量也很大,因此建议使用较大的数据块,比如16K、32K 4、那么混合型的数据库中怎么办? Oracle提供了多尺寸数据块的特征 5、Oracle9i、10g中总共支持5种类型的数据块 2KB、4KB、8KB、16KB、32KB 选择其中一种为标准数据块、其余4种为非标准数据块 1、创建数据库的时候,指定标准数据块的大小,数据库创建完成以后,不能修改 2、系统表空间和临时表空间只能使用标准数据块的大小 3、参数db_block_size确定标准数据块的大小 4、标准数据块的buffer cache由db_cache_size指定 5、undo表空间可以使用非标准数据块的大小 6、如果要使用非标准数据块的大小,必须设定非标准数据块的buffe
文档评论(0)