Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

0

积分

1

好友

48

主题
1#
发表于 2013-5-9 21:16:06 | 查看: 5527| 回复: 6
本帖最后由 lory 于 2013-5-9 21:19 编辑

在网上查关于rman使用large pool的情况,看到maclean这篇文章
http://www.askmaclean.com/archives/does-rman-backup-benefit-from-large-pool.html
在以下情况是RMAN I/O缓冲区从PGA中分配

  1. SQL> show parameter tape

  2. NAME                                 TYPE        VALUE
  3. ------------------------------------ ----------- ------------------------------
  4. backup_tape_io_slaves                boolean     FALSE
  5. tape_asynch_io                       boolean     TRUE
复制代码
但是在MOS上这篇文章Why ORA-04031 on Shared Pool during RMAN back up even when Large Pool is set? [ID 1169387.1]

The LARGE POOL is only utilized when following are set:

1. DBWR_IO_SLAVES to a non-zero value and/or BACKUP_TAPE_IO_SLAVES to TRUE
2. Set DISK_ASYNCH_IO = FALSE

Otherwise shared pool is used. You can test this as below

跟Maclean说的有些出入。不知道为何
7#
发表于 2013-5-15 15:09:42
Maclean Liu(刘相兵 发表于 2013-5-15 14:37
1169387.1 你看的这个note是 问题解释型的note, 不要关注他写的原理部分

所以不看它写的原理了,这个Notes就是描述得有点问题就是了。

其实我猜测ksfqpar可能不是rman 的I/O Buffer,不知道是个啥。
我在测试环境使用rman后,shared pool也会分配ksfqpar,但是量不大,看上去不像I/O Buffer

回复 只看该作者 道具 举报

6#
发表于 2013-5-15 14:37:42
1169387.1 你看的这个note是 问题解释型的note, 不要关注他写的原理部分

回复 只看该作者 道具 举报

5#
发表于 2013-5-15 14:37:10
RMAN Backup Performance [ID 360443.1]

Key Points

1. The RMAN client, target and catalog can all reside on different hosts.
2. The media manager has no direct connection to the target database.
3. RMAN uses its own buffer cache separate from the database buffer cache
4. If slaves are used all rman buffers go into LARGE POOL otherwise, the PGA is used
5. From 9i onwards, memory used by rman INPUT buffers is capped at 16Mb.
6. Disk output buffers default to a total of 4*1Mb.
7. Tape output buffers default to 4*256Kb.

这篇文档还这么说呢
4. If slaves are used all rman buffers go into LARGE POOL otherwise, the PGA is used

回复 只看该作者 道具 举报

4#
发表于 2013-5-15 14:16:53
Maclean Liu(刘相兵 发表于 2013-5-13 11:12
请问有什么出入?

貌似我表格里 把所有的情况都说了一遍了吧

我想表达的是,文档1169387.1里面说的在设置了slave的情况下是用large pool,其他情况是用shared_pool
你的文章里面说的是设置了slave的情况下是用sga,其他情况是用PGA
差别就是在没有使用I/O slave情况下,内存分配的位置不同。
文档 73354.1里面也说明没有I/O Slave情况下,是用PGA的。所以感觉有点疑惑

之前我们用9i的库,并没有设置I/O Slave,而且还设置了large pool但是在rman备份时出现过1169387.1里面说的ora-04031的错误
ORA-04031: unable to allocate 7836 bytes of shared memory ("shared pool","unknown object","sga heap(1,0)","ksfqpar")

所以就更困惑啦

回复 只看该作者 道具 举报

3#
发表于 2013-5-13 11:12:46
请问有什么出入?

貌似我表格里 把所有的情况都说了一遍了吧

回复 只看该作者 道具 举报

2#
发表于 2013-5-12 19:35:58
的确。我之前也看了这篇MOS。

简单做个小测试。

http://www.harryzhang.net/2013/04/06/%E4%B8%BA%E4%BD%95rman%E5%A4%87%E4%BB%BD%E4%B8%8D%E4%BD%BF%E7%94%A8%E5%A4%A7%E6%B1%A0/

回复 只看该作者 道具 举报

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

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-11-16 16:00 , Processed in 0.058306 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569