ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

oracle 表空间及磁盘大小查看

2020-08-19 13:31:42  阅读:464  来源: 互联网

标签:1024 NAME 查看 -- 空间 TABLESPACE oracle 磁盘 SELECT


/*备注:
表空间是数据库的逻辑组成部分
从物理上将:数据库数据存放在数据文件中
从逻辑上将:数据库则是存放在表空间中
表空间由一个或是多个数据文件组成
*/

--1.查看用户下面的所有的表
SELECT * FROM USER_TABLES;
SELECT * FROM DBA_TABLES WHERE OWNER = 'COMM_USER';

--1.1查看表所在的表空间

select TABLE_NAME,TABLESPACE_NAME from dba_tables t where t.table_name='DM_LIST';
--1.2查看用户所属的表空间
SELECT DEFAULT_TABLESPACE FROM DBA_USERS WHERE USERNAME = 'COMM_USER';

--1.3.查看所有的表空间

SELECT * FROM DBA_TABLESPACES;
SELECT * FROM V$TABLESPACE;

--1.3查看默认的表空间

select * from database_properties where property_name='DEFAULT_PERMANENT_TABLESPACE';

--1.4创建索引到指定表空间

create index IDX_DM_FINISHTIME_ORGANID on DM_COMM_PREM_LIST (FINISH_TIME,ORGAN_ID) tablespace TBS_DW_DATA;

--1.5查看表空间下有多少用户,tablespace_name表空间 的名字一定要大写
SELECT DISTINCT S.OWNER
FROM   DBA_SEGMENTS S
WHERE  S.TABLESPACE_NAME = 'TBS_COMM_DATA';


--1.6所有表空间的使用情况
SELECT --B.file_name "文件名",
       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,
             --  file_name,
               SUM(BYTES) TOTAL
        FROM   DBA_DATA_FILES
        GROUP  BY TABLESPACE_NAME/*,file_name*/) B
WHERE  A.TABLESPACE_NAME = B.TABLESPACE_NAME;

--2、linux中查看服务器硬盘的使用情况
df -k   以KB为单位显示磁盘使用量和占用率
df -m   以M为单位显示磁盘使用量和占用率



--3、给表空间新增数据文件并设置30G大小  在命令窗口中执行,数据文件的大小最大不能超过32G,

否则会报错:ORA-01144: 文件大小 (13107200 块) 超出 4194303 块的最大数
方法1)给白空间增加数据文件
SQL> alter tablespace AUDIT add datafile '/pi/app/oracle/oradata/enterprise_tbs05.dbf' size 30G;
alter tablespace 表空间名 add datafile '数据文件存放路径' size 数据文件大小;

方法2)手动增加数据文件尺寸
SQL>ALTER DATABASE AUDIT '/oracle/oradata/db/GAME.dbf' RESIZE 4000M;

方法3)设定数据文件自动扩展
SQL> ALTER DATABASE DATAFILE '/oracle/oradata/db/GAME.dbf'  AUTOEXTEND ON NEXT 100M MAXSIZE 10000M;
执行完上述1、2、3.1)步骤之后:DBA_DATA_FILES中新增的数据文件的bytes的值要比maxbytes的值要大的原因?    
        原因:当一个datafile 手工resize到一个大于maxsize(maxbytes)的值之后,DBA_DATA_FILES中bytes的值要比maxbytes的值要大。
当该datafile被设置为autoextend on之后,dba_data_files中的maxbytes 值被自动结算为一个非零值。dba_data_files中的bytes是该datafile的当前的大小(以bytes为单位)


不常用查询:
1)查看oracle数据库库对象
SELECT owner, object_type, status, COUNT(*) count# FROM all_objects  GROUP BY owner, object_type, status;

2)查看oracle数据库的版本 
SELECT version FROM product_component_version WHERE substr(product, 1, 6) = 'Oracle';

3)查看oracle数据库的创建日期和归档方式
SELECT created, log_mode FROM v$database;

4)查看oracle控制文件目录
SELECT NAME FROM v$controlfile;

5)查看oracle日志文件目录
SELECT MEMBER FROM v$logfile;  

标签:1024,NAME,查看,--,空间,TABLESPACE,oracle,磁盘,SELECT
来源: https://www.cnblogs.com/linyu51/p/13528818.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有