美文网首页OracleOracle专题
Oracle表空间查看方式

Oracle表空间查看方式

作者: 静美书斋 | 来源:发表于2018-09-03 16:06 被阅读0次
  • 以下查询均在拥有DBA权限的用户下执行
  • 以下命令执行结果截图客户端来自:PL/SQL Developer 11.0.6.1796(64 bit)

一、所有表空间

1、查看所有表空间文件存储位置

方式一

select t1.name tablespace_name,t2.name file_name  from v$tablespace t1,v$datafile t2 where t1.ts# = t2.ts#;

方式二

select tablespace_name,file_name from dba_data_files;

以上两种方式查询结果相同,如下图:


表空间存储位置
2、查看所有表空间使用情况

方式一

SELECT a.tablespace_name "表空间名", 
total "表空间大小", 
free "表空间剩余大小", 
(total - free) "表空间使用大小", 
total / (1024 * 1024 * 1024) "表空间大小(G)", 
free / (1024 * 1024 * 1024) "表空间剩余大小(G)", 
(total - free) / (1024 * 1024 * 1024) "表空间使用大小(G)", 
round((total - free) / total, 4) * 100 "使用率 %" 
FROM (SELECT tablespace_name, SUM(bytes) free 
FROM dba_free_space 
GROUP BY tablespace_name) a, 
(SELECT tablespace_name, SUM(bytes) total 
FROM dba_data_files 
GROUP BY tablespace_name) b 
WHERE a.tablespace_name = b.tablespace_name;
表空间查询方式一

方式二

select
b.file_name "物理文件名",
b.tablespace_name "表空间",
b.bytes/1024/1024 "大小(M)",
(b.bytes-sum(nvl(a.bytes,0)))/1024/1024 "已使用(M)",
substr((b.bytes-sum(nvl(a.bytes,0)))/(b.bytes)*100,1,5) "利用率(%)"
from dba_free_space a,dba_data_files b
where a.file_id=b.file_id
group by b.tablespace_name,b.file_name,b.bytes
order by b.tablespace_name;

如下如:


表空间查询方式二

该语句通过查询dba_free_space,dba_data_files这二个数据字典表,得到了表空间文件存储位置,表空间名称,以”兆”为单位的表空间大小,已使用的表空间大小及表空间利用率。dba_free_space表描述了表空间的空闲大小,dba_data_files表描述了数据库中的数据文件,dba_tablespaces表描述了数据库中的表空间。

二、指定用户的表空间

1、查询指定用户默认表空间、默认临时表空间
/* 指定用户(username)必须大写! */
select username,default_tablespace,temporary_tablespace from dba_users where username='GZBPO';

如下图:


查询指定用户默认表空间、默认临时表空间
2、查看指定用户下所有表使用的表空间
select owner,table_name,tablespace_name from dba_tables where owner='GZBPO';

三、查询某表空间被哪些用户所使用

1、先查询所有表空间的名称

select tablespace_name from dba_tablespaces;

2、查看表空间下有多少用户

--查看表空间下有多少用户,tablespace_name表空间的名字一定要大写 
select distinct s.owner from dba_segments s where s.tablespace_name ='USERS'; 
-- 利用视图查看表空间下的所有者(如果有索引的话,此方式会漏掉一些所有者)
select owner from dba_tables where tablespace_name='USERS' group by owner;

文章参照

相关文章

  • Oracle表空间查看方式

    以下查询均在拥有DBA权限的用户下执行以下命令执行结果截图客户端来自:PL/SQL Developer 11.0....

  • Oracle表空间管理

    Oracle表空间管理 创建表空间并指定用户请查看此文章:创建表空间并指定用户 查看表空间大小: 查看表空间存放位...

  • 记一下oracle操作

    配置文件 用户的操作 修改oracle数据库的内存 修改用户密码 表的删除操作 实例检查脚本 查看表空间 表空间的...

  • oracle非系统表空间移动

    环境 centos7 oracle11 1.查看要改变的表空间的数据文件信息 EXAMPLE为要移动的表空间名se...

  • oracle之创建用户、表空间,用户授权及指定表空间

    参考链接 Oracle建立表空间和用户oracle创建删除表空间、用户、数据导入导出等常用sql语句 oracle...

  • 本地管理表空间的由来

    在Oracle8I的版本中,Oracle推出了一种全新的表空间管理方式:本地化管理的表空间。所谓本地化管理,就是指...

  • 北京纬创

    1、Oracle常见表空间及其作用 system表空间:含数据字典信息sysaux表空间:存储各种oracle应用...

  • 表空间

    查看默认表空间 更改默认表空间 创建表空间: 查看表空间位置: 更改表空间状态 查看表空间状态 表空间增加/删除数...

  • Oracle基础总结

    Oracle开发基础重点 Oracle一般操作 表空间 用户 表 表数据 Oracle 查询操作 单表查询 多表查...

  • Oracle中查询tablespace下所有表名

    Oracle中查询表空间下所有表名 Oracle中查询表的comments Oracle中查询表中字段的comments

网友评论

    本文标题:Oracle表空间查看方式

    本文链接:https://www.haomeiwen.com/subject/mzxiwftx.html