oracle视图执行脚本,Oracle 常用的V$ 视图脚本

1. 基本的数据库信息

版本信息:

SQL> select * from v$version;

BANNER

----------------------------------------------------------------

Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 -

Prod

PL/SQL Release 10.2.0.1.0 - Production

CORE 10.2.0.1.0 Production

TNS for 32-bit Windows: Version 10.2.0.1.0 - Production

NLSRTL Version 10.2.0.1.0 - Production

数据库信息:

SQL> select name, created, log_mode from

v$database;

NAME CREATED LOG_MODE

--------- -------------- ------------

TEST 13-9月

-09 ARCHIVELOG

2. 自动工作量仓库(AWR) 的基本信息

自动工作量仓库(AWR)在默认情况下,仓库用小时填充,保留期是7天。

AWR使用多少空间

SQL>Select

occupant_name,occupant_desc,space_usage_kbytes from

v$sysaux_occupants where occupant_name like '%AWR%';

OCCUPANT_N

OCCUPANT_DESC SPACE_USAGE_KBYTES

----------

-------------------------------------------------- ------------------

SM/AWR Server Manageability - Automatic Workload

Repository 51200

系统上最原始的AWR信息是什么?

SQL> select

dbms_stats.get_stats_history_availability from dual;

GET_STATS_HISTORY_AVAILABILITY

---------------------------------------------------------------------------

21-8月 -09 09.18.15.359000000 上午 +08:00

什么是AWR信息的保留期?

SQL> select dbms_stats.get_stats_history_retention

from dual;

GET_STATS_HISTORY_RETENTION

---------------------------

31

将AWR信息的保留期更改为15天?

SQL> EXEC

dbms_stats.alter_stats_history_retention(15);

PL/SQL 过程已成功完成。

3. 基本的许可信息

V$LICENSE视图允许DBA监控系统内任何时候有关数据库数量的所有系统活动的数量。会话警告级别为0表示没有设置init.ora会话警告参数,所以系统不会显示警告信息。会话最大级别为0表示没有设置init.ora会话最大参数,所以系统不会限制会话的数量。查询V$LICENSE视图,以查看所允许的最大会话数。也可以在接近最大数时设置警告。

应该定期执行脚本,以向DBA提供系统一天中实际的会话数量,从而保证正确的许可授权。设置init.ora参数LICENSE_MAX_SESSIONS

= 110,将会话数限制为110。设置init.ora参数LICENSE_SESSIONS_WARNING =

100,系统将向每位在第100个会话之后的用户显示警告信息,这样他们就会通知DBA,系统因遇到问题而关闭(希望能如此)。init.ora参数LICENSE_MAX_USERS用于设置数据库中可以创建的已命名的用户数。在以下程序清单中,该值为0,所以没有限制。

SQL> select * from v$license;

SESSIONS_MAX SESSIONS_WARNING SESSIONS_CURRENT

SESSIONS_HIGHWATER USERS_MAX

------------ ---------------- ---------------- ------------------

----------

0 0 9 18 0

4. 数据库中已安装的产品项

查询V$OPTION视图,可以获取您已安装的Oracle产品项。V$VERSION视图将给出已安装的基本产品项的版本。

SQL> select * from v$option;

PARAMETER VALUE

----------------------------------------------------------------

-----

Partitioning TRUE

Objects TRUE

Real Application

Clusters FALSE

Advanced

replication

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
日常管理维护一个oracle数据库服务器的时,经常会碰到修改view,table结构的情况,而且由于oracle view,函数,存储过程等对象的相互关联的关系,经常会由于一个view,table,fun,proc的修改而导致相关的对象失效。而实施的时候,经常只会注意要修改的对象是否修改完成,往往忽略相关对象的失效问题,所以做了一个自动重新编译的脚本程序,目的是定期(10分钟)完成一次对所有对象的检查,如果有失效对象,则对其进行重新编译。 机制是:基于linux的crontab,定期执行下述脚本,对失效的对象,执行alter object_type object_name compile;语句,达到重新编译。 如果扩展该脚本,可以完成对失效的对象进行告警等管理的需要。 该脚本运行于oracle9i,linux 环境下面 #!/bin/sh nowdir=`pwd` #配置文件的生成日期 nowtime=`date '+%Y%m%d'` nowtime_h=`date '+%Y%m%d%H%M'` #脚本执行的目录 dmpdir=/oracle_script/auto_recompile #初始化参数 cd #执行oracle 相关的环境变量, . .bash_profile cd $dmpdir #下面取出失效的对象('TRIGGER','PROCEDURE','FUNCTION','VIEW), #并且去掉系统的对象,只针对用户自己部署的。 #如果有失效对象则完成alter sql语句。 rm -rf param.temp $ORACLE_HOME/bin/sqlplus -SILENT "/ as sysdba" <<eof set pagesize 1000 set linesize 100 set heading off set feedback off column table_name format a30 spool param.temp select 'alter '||a.object_type||' '||a.owner||'.'||a.object_name ||' compile;' from dba_objects a where a.object_type in('TRIGGER','PROCEDURE','FUNCTION','VIEW') and a.status='INVALID' and a.owner not in ('SYS' ,'SYSTEM','OUTLN','U_SYSTEM'); spool off exit; eof # Start to backup oracle database param echo "-------------- Complete obj compile Started on `date` -------------" >>$dmpdir/do.log dofilelog="obj_compile"$nowtime_h'.log' $ORACLE_HOME/bin/sqlplus -SILENT "/ as sysdba" <<eof SET serveroutput on long 999999 set pagesize 0 set linesize 300 spool $dofilelog @param.temp spool off exit; eof cat param.temp >> $dofilelog echo "-------------- Complete export End on `date` -------------" >>$dmpdir/do.log
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值