加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

查询oracle数据库中表空间名称及对应数据文件

(2017-10-22 16:56:54)
分类: oracle数据库
  1. 查询数据库中的表空间有哪些:
1).查询视图dba_tablespaces,详细试图信息可到oracle官网查询:地址    为:https://docs.oracle.com/cd/E11882_01/index.htm,如图:
可在sqlplus 执行desc dba_tablespaces
我们执行SELECT TABLESPACE_NAME FROM DBA_TABLESPACES;可查询数据库所有的表空间信息
DBA_TABLESPACES视图中是没有记录数据文件存储信息的
数据表空间数据文件信息:gv_$datafilev_$datafile,记录了表空间编号及名称等
临时表空间数据文件信息:gv_$tempfilev_$tempfile,记录了表空间编号及名称等
视图v$tablespace了记录了所有表空间的表空间编号及表空间名称
查看两个视图结构信息:
查询gv_$datafile
查询gv_$tempfile
查询v$tablespace
查询数据表空间,
 select a.ts# "TAB_NUM" ,t.name "TAB_NAME" ,a.name "TAB_DIR" from  gv_$datafile a,v$tablespace t where t.ts#=a.ts#;
查询临时表空间,

select  a.ts# "TAB_NUM" ,t.name "TAB_NAME" ,a.name "TAB_DIR" from  gv_$tempfile a,v$tablespace t where t.ts#=a.ts# 

最后加入union,将数据合并即可:
 select a.ts# "TAB_NUM" ,t.name "TAB_NAME" ,a.name "TAB_DIR" from  gv_$datafile a,v$tablespace t where t.ts#=a.ts#
union 
select  a.ts# "TAB_NUM" ,t.name "TAB_NAME" ,a.name "TAB_DIR" from  gv_$tempfile a,v$tablespace t where t.ts#=a.ts# 






0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有