oracle一些小的知识点

  1. 查看所建的实例中所有的空间
SELECT tablespace_name, --表空间名字
file_id, --表空间id
file_name, --文件的保存位置
round(bytes / (1024 * 1024), 0) total_space --所建表空间的大小
FROM dba_data_files 
ORDER BY tablespace_name; 

显示效果
在这里插入图片描述

  1. 查看表空间的使用率
SELECT Upper(F.TABLESPACE_NAME)         "表空间名",
       D.TOT_GROOTTE_MB                 "表空间大小(M)",
       D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)",
       To_char(Round(( D.TOT_GROOTTE_MB - F.TOTAL_BYTES ) / D.TOT_GROOTTE_MB * 100, 2), '990.99')
       || '%'                           "使用比",
       F.TOTAL_BYTES                    "空闲空间(M)",
       F.MAX_BYTES                      "最大块(M)"
FROM   (SELECT TABLESPACE_NAME,
               Round(Sum(BYTES) / ( 1024 * 1024 ), 2) TOTAL_BYTES,
               Round(Max(BYTES) / ( 1024 * 1024 ), 2) MAX_BYTES
        FROM   SYS.DBA_FREE_SPACE
        GROUP  BY TABLESPACE_NAME) F,
       (SELECT DD.TABLESPACE_NAME,
               Round(Sum(DD.BYTES) / ( 1024 * 1024 ), 2) TOT_GROOTTE_MB
        FROM   SYS.DBA_DATA_FILES DD
        GROUP  BY DD.TABLESPACE_NAME) D
WHERE  D.TABLESPACE_NAME = F.TABLESPACE_NAME
ORDER  BY 1

显示效果
在这里插入图片描述

  1. 查看用户角色
SELECT e.granted_role FROM USER_ROLE_PRIVS e;
  1. 其他
    –查看用户和默认表空间的关系
    select username,default_tablespace from dba_users;
    –查看当前用户能访问的表
    select * from user_tables;
    –Oracle查询用户表
    select * from user_all_tables;
    –Oracle查询用户视图
    select * from user_views;
    –查询所有函数和储存过程:
    select * from user_source;
    –查询所有用户:
    select * from all_users;
    –select * from dba_users
    –查看当前用户连接:
    select * from v S e s s i o n ; S E L E C T F R O M U S E R R O L E P R I V S ; s e l e c t f r o m s e s s i o n p r i v s ; s e l e c t f r o m d b a r o l e s ; S E L E C T N A M E F R O M V Session; --查看用户角色 SELECT * FROM USER_ROLE_PRIVS; --查看当前用户权限: select * from session_privs; --查看所有用户所拥有的角色 select * from dba_roles; --查看数据库名 SELECT NAME FROM V DATABASE;
    –查看所有表空间使用情况
    select a.file_id “FileNo”,
    a.tablespace_name “Tablespace_name”,
    a.bytes “Bytes”,
    a.bytes - sum(nvl(b.bytes, 0)) “Used”,
    sum(nvl(b.bytes, 0)) “Free”,
    sum(nvl(b.bytes, 0)) / a.bytes * 100 “%free”
    from dba_data_files a, dba_free_space b
    where a.file_id = b.file_id(+)
    group by a.tablespace_name, a.file_id, a.bytes
    order by a.tablespace_name;

猜你喜欢

转载自blog.csdn.net/qq_36088636/article/details/82972599