oracle 8i系统检查

oracle 8i系统检查

set echo on

spool d:\bk\1.txt

select sysdate from dual;

--版本信息

select * from v$version;

--安装的产品

col PARAMETER for a50;

col value for a10;

select * from v$option order by 2;

--用户信息

set linesize 100

set pagesize 100

COL USERNAME FOR A18

COL PASSWORD FOR A18

COL DEFAULT_TABLESPACE FOR A18

COL PROFILE FOR A18

col account_status for a18

SELECT USERNAME,PASSWORD,DEFAULT_TABLESPACE,PROFILE,account_status

FROM DBA_USERS ORDER BY 5,3;

--日志文件

col MEMBERS for 9;

SELECT * FROM V$LOG;

SELECT * FROM V$LOGFILE;

--归档信息,目录,格式,归档进程

col DEST_NAME for a25

col DESTINATION for a60

col value for a20

select DESTINATION from v$archive_dest where DESTINATION is not null;

select value from v$parameter where name='log_archive_format';

select * from v$archive_processes where status='ACTIVE';

col value clear

--数据文件基本信息

SELECT TABLESPACE_NAME,FILE_NAME,TRUNC(BYTES/1024/1024) MB

FROM DBA_data_files ORDER BY TABLESPACE_NAME;

--数据文件的可否自动扩展,如果可以扩展每次增加的块数

select FILE_NAME,STATUS,AUTOEXTENSIBLE,round(MAXBYTES/1024/1024/1024) gb,

INCREMENT_BY "每次增加块数"

from dba_data_files

order by 3;

--表空间的基本信息

select TABLESPACE_NAME,STATUS,CONTENTS,EXTENT_MANAGEMENT,

ALLOCATION_TYPE

from dba_tablespaces

order by 3;

--表空间的总容量和空闲空间,表空间的碎片个数和最大的碎片

select t.tablespace_name,TOTAL_MB-FREE_MB userd_mb,FREE_MB,TOTAL_MB,number_space,max_space

from

(SELECT TABLESPACE_NAME,TRUNC(SUM(BYTES)/1024/1024) TOTAL_MB

FROM DBA_data_files

GROUP BY TABLESPACE_NAME) t,

(SELECT TABLESPACE_NAME,TRUNC(SUM(BYTES)/1024/1024) FREE_MB,

count(*) number_space,round(max(bytes)/1024/1024) max_space

FROM DBA_FREE_SPACE

GROUP BY TABLESPACE_NAME) f

where t.tablespace_name=f.tablespace_name

order by number_space desc;

--数据文件的碎片个数和最大的碎片

col name for a40

select file_name,TOTAL_MB-FREE_MB userd_mb,FREE_MB,TOTAL_MB,number_space,max_space

from

(SELECT file_id,file_name,TRUNC(SUM(BYTES)/1024/1024) TOTAL_MB

FROM DBA_data_files

GROUP BY file_id,file_name) t,

(SELECT file_id,TRUNC(SUM(BYTES)/1024/1024) FREE_MB,

count(*) number_space,trunc(max(bytes)/1024/1024) max_space

FROM DBA_FREE_SPACE group by file_id ) f

where f.file_id=t.file_id

order by number_space desc;

--控制文件

col type for a25

col name for a42

select * from v$controlfile;

select * from v$controlfile_record_section;

col type clear

--临时表空间和临时文件

select * from v$tempfile;

--分区表的信息

SELECT owner,TABLE_NAME,PARTITIONING_TYPE, SUBPARTITIONING_TYPE,PARTITION_COUNT

FROM DBA_PART_TABLES

where owner not in('SYSTEM','SH');

--找到大的段

col SEGMENT_NAME for a30;

col SEGMENT_type for a20;

select OWNER,SEGMENT_NAME,SEGMENT_TYPE,TABLESPACE_NAME,BLOCKS,EXTENTS

from dba_segments

where EXTENTS>50 or BLOCKS>10000

order by BLOCKS desc;

--索引信息,找到无效的索引

col owner for a12;

col tablespace_name for a12;

select index_name,owner,table_name,tablespace_name,status

from dba_indexes

where owner not in ('SYS','SYSTEM')

and status != 'VALID'

and tablespace_name is not null;

--排序段信息

select * from V$sort_usage;

--内存信息

col name for a30;

col value clear;

select * from v$sga;

select gethitratio*100

from v$librarycache

where namespace = 'SQL AREA';

select * from V$SHARED_POOL_RESERVED;

SELECT (1 - (phy.value -lob.value -dir.value)/ses.value)*100 "CACHE HIT RATIO"

FROM vsysstat ses, vsysstat lob,

vsysstat dir, vsysstat phy

WHERE ses.name = 'session logical reads'

AND dir.name = 'physical reads direct'

AND lob.name = 'physical reads direct (lob)'

AND phy.name = 'physical reads';

--综合统计

col value clear

col name for a53

select * from v$sysstat where value<>0;

--等待事件

select * from v$system_event;

select * from v$session_wait

where event not in

('rdbms ipc message','null event','smon timer','pmon timer','wakeup time manager');

--回退信息

select SEGMENT_NAME,INITIAL_EXTENT,NEXT_EXTENT,MIN_EXTENTS,MAX_EXTENTS,STATUS

from dba_rollback_segs;

select USN "编号",EXTENTS "现有范围",RSSIZE "现有大小" ,HWMSIZE "最大值",

SHRINKS "回缩次数",AVESHRINK "平均回缩大小",EXTENDS "扩展次数" from v$rollstat;

--锁的信息

col sid for 999

col LMODE for 9

col REQUEST for 9

col BLOCK for 9

col type clear

select * from v$lock;

--并行查询

col value clear;

col STATISTIC for a30;

SELECT * FROM V$PQ_SYSSTAT;

--参数文件

col name for a40

col value for a50

select name,value from v$parameter where value is not null and value<>'0';

--后台进程

col name for a15;

select paddr, NAME, DESCRIPTION from v$bgprocess where paddr<>'00';

--总进程信息

col PROGRAM for a30

select ADDR,BACKGROUND ,PROGRAM,TERMINAL,USERNAME

from v$process order by 2 ;

spool off

相关推荐
惜分飞2 小时前
ORA-600 kcratr_nab_less_than_odr和ORA-600 4193故障处理--惜分飞
数据库·oracle
fen_fen17 小时前
Oracle建表语句示例
数据库·oracle
此刻你21 小时前
常用的 SQL 语句
数据库·sql·oracle
海心焱1 天前
从零开始构建 AI 插件生态:深挖 MCP 如何打破 LLM 与本地数据的连接壁垒
jvm·人工智能·oracle
德彪稳坐倒骑驴1 天前
MySQL Oracle面试题
数据库·mysql·oracle
吕司1 天前
MySQL库的操作
数据库·mysql·oracle
dishugj1 天前
【Oracle】 rac的一些问题以及解决方案
数据库·oracle
eWidget1 天前
面向信创环境的Oracle兼容型数据库解决方案
数据库·oracle·kingbase·数据库平替用金仓·金仓数据库
熊文豪1 天前
关系数据库替换用金仓——Oracle兼容性深度解析
数据库·oracle·金仓数据库·电科金仓·kes
eWidget1 天前
面向Oracle生态的国产高兼容数据库解决方案
数据库·oracle·kingbase·数据库平替用金仓·金仓数据库