网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.Oracle如何对CLOB行字段来执行全.
.Oracle--养生之道.
.ORACLE常见错误代码的分析与解决.
.dbms_job包的应用:在Oracle中实现.
.静态 SQL语句中的“动态”功能.
.redhat下如何允许root通过telnet.
.怎样在Oracle中创建维护图形大对.
.Oracle 9i新特性研究四(延续性初.
.DBA生存之四大守则.
.Oracle Log 的格式资料整理.
.诊断Oracle数据库Hanging问题.
.ORACLE常见错误代码的分析与解决.
.oracle 基础.
.实现Oracle数据库的每天的自动备.
.Oracle 认证学习笔记.
.部署和管理应用程序的 Oracle AS.
.PL/SQL基础:阶层查询.
.Oracle DBA 创建数据库试题选.
.Oracle 9i配置【管理服务器】.
.转载:如何有效的利用数据字典.

深入讲解调整Oracle SGA大小的解决方法

发表日期:2008-4-7


在修改数据缓冲区的时候,提示错误如下:

SQL> alter system set db_cache_size=25165824 scope=both;

alter system set db_cache_size=25165824 scope=both

*

ERROR at line 1:

ORA-02097: parameter cannot be modified because specified value is invalid

ORA-00384: Insufficient memory to grow cache

SQL>

出现这种错误的具体原因:

SGA(sga_max_size)是由共享池(shared_pool_size),缓冲区高速缓存(db_cache_size 9i以上版本),大型池(large_pool_size),java池(java_pool_size)组成的,在我们安装的时候这些已经分配了一定的值,由于需求需要对其进行调整。

现在sga的值是一定的,sga通常是大于等于以上几项的值之和。

假如正好sga等于各项之和,那么调大其中任何一项都会出错,调小是不成问题的。

在此情况下也就出现了以上的错误:

下面我们以db_cache_size为例:

解决方法如下:

1、调小其它项的值,一般情况下我们不会采用这种方法,随着业务的增大对内存的需求越来越高,估计其它项也没有调小的余地

2、调大sga此时数据库需要是在关闭状态,由于sga不是动态参数,所以我们需要修改init$ORACLE_SID.ORA的中sga的大小

(1)首先创建参数文件,这是为了保持和服务器参数文件一致SQL>create pfile from spfile;

(2)修改init$ORACLE_SID.ORA中对应的sga_max_size大小

(3)创建服务器参数文件SQL>create spfile from pfile;

(4)启动数据库 修改db_cache_size的大小

SQL> alter system set db_cache_size=25165824 scope=both;

System altered.

修改完毕。

总结:

sga_max_size需要重启数据库来进行调整,而其中的db_cache_size等可以动态调节,在调节共享池时需要计算好SGA的总容量,假如超过了sga_max_size,就会出现报错的现象。

上一篇:讲解删除部分控制文件后的数据库启动 人气:926
下一篇:Oracle数据库中的表连接方式及使用场合 人气:1026
浏览全部Oracle的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐