就我看,Oracle9i最重要的新特性就能动态修改几乎所有Oracle性能参数。这使Oracle专家能在Oracle实例运行期间动态地重新配置它——不管是因为要解决当前的一个性能问题,还是因为猜测到一个紧迫的性能需求。 由于能动态修改系统全局区域(System Global Area,SGA)中的所有东西(SGA是Oracle的一个实例使用的RAM),所以至关重要的一点就是知道如何监视Oracle数据库。归纳出系统访问趋势及访问模式后,可因为猜测到常规的资源需求而提前重新配置好数据库。
通常可选择两种工具之一来安排动态重配置。最常见的方式是使用一个UNIX cron作业,它启动一个shell脚本来安排定期重配置。还可使用Oracle dbms_job实用程序。这两种工具都答应你安排一次配置更改。 清单A如下: Listing A: Script to change to DSS-mode
#!/bin/ksh # First, we must set the environment . . . . ORACLE_SID=$1 eXPort ORACLE_SID ORACLE_HOME=`cat /etc/oratabgrep ^$ORACLE_SID:cut -f2 -d':'` #ORACLE_HOME=`cat /var/opt/oracle/oratabgrep ^$ORACLE_SID:cut -f2 -d':'` export ORACLE_HOME PATH=$ORACLE_HOME/bin:$PATH export PATH $ORACLE_HOME/bin/sqlplus –s /nologin< alter system set db_cache_size=1500m; alter system set shared_pool_size=500m; alter system set pga_aggregate_target=4000m; exit !