如何查看oracle中某个用户占用表空间大小情况 50

其实我就是想知道这个用户每个月数据增加量是多少,但是目前有多个用户,直接查看表空间大小,显示的是所有用户使用的容量,如果我想知道某一个用户使用了多大的表空间容量,需要怎么... 其实我就是想知道这个用户每个月数据增加量是多少,但是目前有多个用户,直接查看表空间大小,显示的是所有用户使用的容量,如果我想知道某一个用户使用了多大的表空间容量,需要怎么操作?我导出这个用户的所有表后DMP文件大小是179M,这个大小可以做参考么?
用select bytes/1024/1024 from user_extents;好像不行,出来490行结果,每行不是0.0625就是1
展开
 我来答
198901245631
2015-07-05 · TA获得超过3.5万个赞
知道大有可为答主
回答量:9037
采纳率:92%
帮助的人:1833万
展开全部
可以通过以下语句查看所有的表空间大小:
sql:SELECT C.TABLESPACE_NAME,A.BYTES/1048576 MEGS_TOTAL,(A.BYTES-B.BYTES)/1048576 MEGS_USED,
B.BYTES/1048576 MEGS_FREE,(A.BYTES-B.BYTES)/A.BYTES * 100 PCT_USED, B.BYTES/A.BYTES * 100 PCT_FREE
FROM (SELECT TABLESPACE_NAME,SUM(A.BYTES) BYTES,MIN(A.BYTES) MINBYTES,MAX(A.BYTES) MAXBYTES FROM SYS.DBA_DATA_FILES A
GROUP BY TABLESPACE_NAME) A,(SELECT A.TABLESPACE_NAME,NVL(SUM(B.BYTES),0) BYTES
FROM SYS.DBA_DATA_FILES A,SYS.DBA_FREE_SPACE B WHERE A.TABLESPACE_NAME = B.TABLESPACE_NAME (+) AND A.FILE_ID = B.FILE_ID (+)
GROUP BY A.TABLESPACE_NAME) B,SYS.DBA_TABLESPACES C
WHERE A.TABLESPACE_NAME = B.TABLESPACE_NAME(+) AND A.TABLESPACE_NAME = C.TABLESPACE_NAME ORDER BY 6;
备注:如果是查询特定的可以在外面在嵌套一层select * from(sql)t1 where t1.TABLESPACE_NAME='表空间名称'的形式即可。
百度网友9f70a8c
2010-01-11 · TA获得超过1179个赞
知道小有建树答主
回答量:574
采纳率:100%
帮助的人:650万
展开全部
不好意思。。失误
应该加SUM
select sum(bytes)/1024/1024 from user_extents;

要是用户有多个表空间数据的话可以在最后加个where tablespace_name=xxx;来限定某个表空间
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
喻子墨0j8ad3
2010-01-11 · TA获得超过219个赞
知道答主
回答量:101
采纳率:0%
帮助的人:43.2万
展开全部
(1)以DBA权限登录数据库执行,查询全部表空间使用情况。
SELECT c.tablespace_name,a.bytes/1048576 Megs_Total,(a.bytes-b.bytes)/1048576 Megs_Used,
b.bytes/1048576 Megs_Free,(a.bytes-b.bytes)/a.bytes * 100 Pct_Used, b.bytes/a.bytes * 100 Pct_Free
FROM (SELECT tablespace_name,SUM(a.bytes) bytes,MIN(a.bytes) minbytes,MAX(a.bytes) maxbytes
FROM sys.DBA_DATA_FILES a
GROUP BY tablespace_name) a,(SELECT a.tablespace_name,NVL(SUM(b.bytes),0) bytes
FROM sys.DBA_DATA_FILES a,sys.DBA_FREE_SPACE b
WHERE a.tablespace_name = b.tablespace_name (+)
AND a.file_id = b.file_id (+)
GROUP BY a.tablespace_name) b,sys.DBA_TABLESPACES c
WHERE a.tablespace_name = b.tablespace_name(+)
AND a.tablespace_name = c.tablespace_name
ORDER BY 6;
(2)确认一下关心的用户所属表空间与上述全部表空间使用情况比对,即可知道结果
(3)DMP文件本身经过压缩,基本可按照4倍的比例考虑表空间已使用的容量,即:179M*4
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
汗丹溪06n
2010-01-12 · TA获得超过177个赞
知道答主
回答量:80
采纳率:0%
帮助的人:0
展开全部
select sum(bytes)/1024/1024 from user_extents;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式