Oracle 查看SGA PGA使用率
Oracle 查看SGA PGA使用率
select name, total, round(total - free, 2) used, round(free, 2) free, round((total - free) / total * 100, 2) pctused from (select 'SGA' name, (select sum(value / 1024 / 1024) from v$sga) total, (select sum(bytes / 1024 / 1024) from v$sgastat where name = 'free memory') free from dual) union select name, total, round(used, 2) used, round(total - used, 2) free, round(used / total * 100, 2) pctused from (select 'PGA' name, (select value / 1024 / 1024 total from v$pgastat where name = 'aggregate PGA target parameter') total, (select value / 1024 / 1024 used from v$pgastat where name = 'total PGA allocated') used from dual) union select name, round(total, 2) total, round((total - free), 2) used, round(free, 2) free, round((total - free) / total * 100, 2) pctused from (select 'Shared pool' name, (select sum(bytes / 1024 / 1024) from v$sgastat where pool = 'shared pool') total, (select bytes / 1024 / 1024 from v$sgastat where name = 'free memory' and pool = 'shared pool') free from dual) union select name, round(total, 2) total, round(total - free, 2) used, round(free, 2) free, round((total - free) / total, 2) pctused from (select 'Default pool' name, (select a.cnum_repl * (select value from v$parameter where name = 'db_block_size') / 1024 / 1024 total from x$kcbwds a, v$buffer_pool p where a.set_id = p.LO_SETID and p.name = 'DEFAULT' and p.block_size = (select value from v$parameter where name = 'db_block_size')) total, (select a.anum_repl * (select value from v$parameter where name = 'db_block_size') / 1024 / 1024 free from x$kcbwds a, v$buffer_pool p where a.set_id = p.LO_SETID and p.name = 'DEFAULT' and p.block_size = (select value from v$parameter where name = 'db_block_size')) free from dual) union select name, nvl(round(total, 2), 0) total, nvl(round(total - free, 2), 0) used, nvl(round(free, 2), 0) free, nvl(round((total - free) / total, 2), 0) pctused from (select 'KEEP pool' name, (select a.cnum_repl * (select value from v$parameter where name = 'db_block_size') / 1024 / 1024 total from x$kcbwds a, v$buffer_pool p where a.set_id = p.LO_SETID and p.name = 'KEEP' and p.block_size = (select value from v$parameter where name = 'db_block_size')) total, (select a.anum_repl * (select value from v$parameter where name = 'db_block_size') / 1024 / 1024 free from x$kcbwds a, v$buffer_pool p where a.set_id = p.LO_SETID and p.name = 'KEEP' and p.block_size = (select value from v$parameter where name = 'db_block_size')) free from dual) union select name, nvl(round(total, 2), 0) total, nvl(round(total - free, 2), 0) used, nvl(round(free, 2), 0) free, nvl(round((total - free) / total, 2), 0) pctused from (select 'RECYCLE pool' name, (select a.cnum_repl * (select value from v$parameter where name = 'db_block_size') / 1024 / 1024 total from x$kcbwds a, v$buffer_pool p where a.set_id = p.LO_SETID and p.name = 'RECYCLE' and p.block_size = (select value from v$parameter where name = 'db_block_size')) total, (select a.anum_repl * (select value from v$parameter where name = 'db_block_size') / 1024 / 1024 free from x$kcbwds a, v$buffer_pool p where a.set_id = p.LO_SETID and p.name = 'RECYCLE' and p.block_size = (select value from v$parameter where name = 'db_block_size')) free from dual) union select name, nvl(round(total, 2), 0) total, nvl(round(total - free, 2), 0) used, nvl(round(free, 2), 0) free, nvl(round((total - free) / total, 2), 0) pctused from (select 'DEFAULT 16K buffer cache' name, (select a.cnum_repl * 16 / 1024 total from x$kcbwds a, v$buffer_pool p where a.set_id = p.LO_SETID and p.name = 'DEFAULT' and p.block_size = 16384) total, (select a.anum_repl * 16 / 1024 free from x$kcbwds a, v$buffer_pool p where a.set_id = p.LO_SETID and p.name = 'DEFAULT' and p.block_size = 16384) free from dual) union select name, nvl(round(total, 2), 0) total, nvl(round(total - free, 2), 0) used, nvl(round(free, 2), 0) free, nvl(round((total - free) / total, 2), 0) pctused from (select 'DEFAULT 32K buffer cache' name, (select a.cnum_repl * 32 / 1024 total from x$kcbwds a, v$buffer_pool p where a.set_id = p.LO_SETID and p.name = 'DEFAULT' and p.block_size = 32768) total, (select a.anum_repl * 32 / 1024 free from x$kcbwds a, v$buffer_pool p where a.set_id = p.LO_SETID and p.name = 'DEFAULT' and p.block_size = 32768) free from dual) union select name, total, total - free used, free, (total - free) / total * 100 pctused from (select 'Java Pool' name, (select sum(bytes / 1024 / 1024) total from v$sgastat where pool = 'java pool' group by pool) total, (select bytes / 1024 / 1024 free from v$sgastat where pool = 'java pool' and name = 'free memory') free from dual) union select name, Round(total, 2), round(total - free, 2) used, round(free, 2) free, round((total - free) / total * 100, 2) pctused from (select 'Large Pool' name, (select sum(bytes / 1024 / 1024) total from v$sgastat where pool = 'large pool' group by pool) total, (select bytes / 1024 / 1024 free from v$sgastat where pool = 'large pool' and name = 'free memory') free from dual) order by pctused desc;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南