其他分享
首页 > 其他分享> > DBA常用查询语句

DBA常用查询语句

作者:互联网

----查看表空间的使用情况
SELECT A.TABLESPACE_NAME,
       A.BYTES           TOTAL,
       B.BYTES           USED,
       C.BYTES           FREE,
       (B.BYTES * 100) / A.BYTES "% USED",
       (C.BYTES * 100) / A.BYTES "% FREE"
  FROM SYS.SM$TS_AVAIL A, SYS.SM$TS_USED B, SYS.SM$TS_FREE C
WHERE A.TABLESPACE_NAME = B.TABLESPACE_NAME
   AND A.TABLESPACE_NAME = C.TABLESPACE_NAME;

 

----查看表空间的名称及大小
select t.tablespace_name, round(sum(bytes / (1024 * 1024)), 0) ts_size
  from dba_tablespaces t, dba_data_files d
where t.tablespace_name = d.tablespace_name
group by t.tablespace_name;

 

----查看表空间物理文件的名称及大小
select tablespace_name,
       file_id,
       file_name,
       round(bytes / (1024 * 1024), 0) total_space
  from dba_data_files
order by tablespace_name;

 

----查看回滚段名称及大小
select segment_name,
       tablespace_name,
       r.status,
       (initial_extent / 1024) InitialExtent,
       (next_extent / 1024) NextExtent,
       max_extents,
       v.curext CurExtent
  From dba_rollback_segs r, v$rollstat v
Where r.segment_id = v.usn(+)
order by segment_name;

 

----查看数据库库对象
select owner, object_type, status, count(*) count# from all_objects group by owner, object_type, status;

 

----查看数据库的版本
select * FROM Product_component_version

 

----查看当前用户的缺省表空间
select username,default_tablespace from user_users

 

----查看当前用户的权限
select * from user_role_privs

 

----查看当前用户的系统权限和表级权限
select * from user_sys_privs;
select * from user_tab_privs;

 

----查看用户下所有的表
select * from user_tables

 

----查看名称包含log字符的表
select object_name,object_id from user_objects where instr(object_name,'LOG')>0;

 

----查看某表的创建时间
select object_name,created from user_objects where object_name=upper('&table_name');

 

----查看某表的大小
select sum(bytes)/(1024*1024) as "size(M)" from user_segments where segment_name=upper('&table_name');

 

----查看放在ORACLE的内存区里的表
select table_name,cache from user_tables where instr(cache,'Y')>0;

 

----查看索引个数和类别
select index_name,index_type,table_name from user_indexes order by table_name;

 

----查看索引被索引的字段
select * from user_ind_columns where index_name=upper('&index_name');

 

----查看索引的大小
select sum(bytes)/(1024*1024) as "size(M)" from user_segments where segment_name=upper('&index_name');

 

----查看序列号,last_number是当前值
select * from user_sequences;

 

----查看视图的名称
select view_name from user_views;

 

----查看创建视图的select语句
select view_name,text_length from user_views;
 
set long 2000; 说明:可以根据视图的text_length值设定set long 的大小
 
select text from user_views where view_name=upper('&view_name');

 

----查看同义词的名称
select * from user_synonyms

 

----查看函数和过程
select object_name,status from user_objects where object_type='FUNCTION';
 
select object_name,status from user_objects where object_type='PROCEDURE';

 

----查看数据库的创建日期和归档方式
select Created,Log_Mode From V$Database;

 

----用系统管理员,查看当前数据库有几个用户连接:
select username,sid,serial# from v$session;

 

----如果要停某个连接用
alter system kill session 'sid,serial#';

 

----增加字段
alter table m_gl_gls3_history add (aaaaa varchar2(20),bbbbb varchar2(10))

 

----修改字段属性
alter table m_gl_gls3_history modify (aaaaa varchar2(10))
--要改变表中的字段的类型或缩小字段长度,该字段的所有记录值必须为空。
--如果改字段存在记录值,则该字段长度只能扩大,不能缩小。

 

----删除字段
alter table m_gl_gls3_history drop (aaaaa , bbbbb )

 

----row_number 是窗口函数,语法如下:
row_number() over (partition by <用于分组的字段名> order by <用于组内排序的字段名>)
其中 partition by 部分可省略。

标签:语句,name,查看,DBA,object,查询,----,user,select
来源: https://www.cnblogs.com/zengwb/p/16645943.html