ITPub博客

首页 > 数据库 > 数据库开发技术 > 查看和监控ORACLE的SQL

查看和监控ORACLE的SQL

原创 数据库开发技术 作者:edenCC 时间:2007-07-30 16:54:58 0 删除 编辑

1. 查看本用户下的各种对象的SQL脚本

SQL语句:

[@more@]表:

  select * from cat;

  select * from tab;

  select table_name from user_tables;

视图:

  select text from user_views where view_name=upper('&view_name');

索引:

  select index_name,table_owner,table_name,tablespace_name,status from user_indexes order by table_name;

触发器:

  select trigger_name,trigger_type,table_owner,table_name,status from user_triggers;

快照:

  select owner,name,master,table_name,last_refresh,next from user_snapshots order by owner,next;

同义词:

  select * from syn;

序列:

  select * from seq;

数据库链路:

  select * from user_db_links;

约束限制:

  select TABLE_NAME,CONSTRAINT_NAME,SEARCH_CONDITION,STATUS from user_constraints;

本用户读取其他用户对象的权限:

  select * from user_tab_privs;

本用户所拥有的系统权限:

  select * from user_sys_privs;

用户:

  select * from all_users order by user_id;

表空间剩余自由空间情况:

  select tablespace_name,sum(bytes) 总字节数,max(bytes),count(*) from dba_free_space group by tablespace_name;

数据字典:

  select table_name from dict order by table_name;

锁及资源信息:

  select * from v$lock;不包括DDL锁

数据库字符集:

  select name,value$ from props$ where name='NLS_CHARACTERSET';

inin.ora参数:

  select name,value from v$parameter order by name;

SQL共享池:

  select sql_text from v$sqlarea;

数据库:

  select * from v$database

控制文件:

  select * from V$controlfile;

重做日志文件信息:

  select * from V$logfile;

来自控制文件中的日志文件信息:

  select * from V$log;

来自控制文件中的数据文件信息:

  select * from V$datafile;

NLS参数当前值:

  select * from V$nls_parameters;

ORACLE版本信息:

  select * from v$version;

描述后台进程:

  select * from v$bgprocess;

查看版本信息:

  select * from product_component_version;

2. 监控数据库

select '查看数据库的版本' from dual;

Select version FROM Product_component_version Where SUBSTR(PRODUCT,1,6)='Oracle';

select '查看数据库库对象' from dual;

select owner, object_type, status, count(*) count# from all_objects group by owner, object_type, status;

select '查看数据库的创建日期和归档方式' from dual;

Select Created, Log_Mode, Log_Mode From V$Database;

select '查看控制文件' from dual;

select name from v$controlfile;

select '查看表空间的名称及大小' from dual;

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 '查看表空间物理文件的名称及大小' from dual;

select tablespace_name, file_id, file_name, round(bytes/(1024*1024),0) total_space from dba_data_files order by tablespace_name;

select '查看表空间的使用情况' from dual;

select sum(bytes)/(1024*1024) as free_space,tablespace_name from dba_free_space group by tablespace_name ;

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 '查看日志文件' from dual;

select member from v$logfile;

select '查看回滚段名称及大小' from dual;

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;

常用的查看数据库的SQL
查看数据库的SQL

1、查看表空间的名称及大小
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;

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

3、查看回滚段名称及大小
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 ;

4、查看控制文件
select name from v$controlfile;

5、查看日志文件
select member from v$logfile;

6、查看表空间的使用情况
select sum(bytes)/(1024*1024) as free_space,tablespace_name
from dba_free_space
group by tablespace_name;
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;

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

8、查看数据库的版本 
Select version FROM Product_component_version
Where SUBSTR(PRODUCT,1,6)='Oracle';

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

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/348136/viewspace-929424/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 分区只读的错误
请登录后发表评论 登录
全部评论
  • 博文量
    7
  • 访问量
    10890