Streams AQ: enqueue blocked on low memory等待事件导致expdp导出缓慢问题
问题背景:
客户反馈2g的数据导出需要2.5小时,采用expdp方式导出 (12c)
问题解决:
获取备份时间的awr报告
根据awr报告显示
异常如下
参考
EXPDP And IMPDP Slow Performance In 11gR2 and 12cR1 And Waits On Streams AQ: Enqueue Blocked On Low Memory (文档 ID 1596645.1)
查看streams_pool_size
1 SQL> show parameter streams 2 3 NAME TYPE VALUE 4 ------------------------------------ --------------------------------- ------------------------------ 5 streams_pool_size big integer 0
此为自动共享内存管理,查看实际大小
1 select x.ksppinm name,y.ksppstvl value,x.ksppdesc describ 2 from sys.x$ksppi x,sys.x$ksppcv y 3 where x.inst_id=userenv('Instance') 4 and y.inst_id=userenv('Instance') 5 and x.indx=y.indx 6 and x.ksppinm like '%streams_pool%' 7 /
实际大小为32M
调整为150m
ALTER SYSTEM SET STREAMS_POOL_SIZE=150M SCOPE=BOTH;
发现导出还是慢,
重启数据库后导出迅速
(scope=both这里还是要重启)