zoukankan      html  css  js  c++  java
  • 十八、oracle查看、扩展表空间及linux服务器硬盘容量大小查看

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

    --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;  

    参看博文:

    http://www.cnblogs.com/qintangtao/archive/2012/11/04/2753549.html
    http://blog.csdn.net/msdnchina/article/details/48178719

    临时表空间不足报错: 无法通过 128 (在表空间 TEMP 中) 扩展 temp 段 如何解决

    https://blog.csdn.net/huaishu/article/details/16981147

    细水长流,打磨濡染,渐趋极致,才是一个人最好的状态。
  • 相关阅读:
    服务器状态码
    QuerySet中添加Extra进行SQL查询
    django配置一个网站建设
    MySQL数据库查询中的特殊命令
    125. Valid Palindrome
    121. Best Time to Buy and Sell Stock
    117. Populating Next Right Pointers in Each Node II
    98. Validate Binary Search Tree
    91. Decode Ways
    90. Subsets II
  • 原文地址:https://www.cnblogs.com/jiarui-zjb/p/7602245.html
Copyright © 2011-2022 走看看