暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
03.ParameterFile
678
41页
2次
2019-09-19
10墨值下载
3
3
参数及参数文件
参数及参数文件
Oracle 数据库中,有一系列的初始化参数用来进行数据库约束和资源限制这些参数
通常存储在一个参数文件中,在数据库实例启动时读取并加载。
初始化参数对数据库来说非常重要,很多参数通过合理的调整可以极大的提高数据库性
能。本章对初始化参数和参数文件进行相关探讨。
3.1 初始化参数的分类
按照得出方式不同,初始化参数可以分为三类
3.2.1 推导参数(Derived Parameters)
推导参数通常来自于其他参数的运算,依赖其他参数得出。所以这类参数通常不需要修
改。如果强制修改,那么修改值会覆盖推导值。
常见的此类参数有很多,例如:SESSIONS 参数, Oracle 11gR2 文档中,该参数按以下
公式运算得出:
(1.5 * PROCESSES) + 22
缺省的,当 PROCESSES 被修改时,此参数会自动计算并生效。以下是一个示范数据库
中这两个参数的设置:
SQL> select name,value from v$parameter where name in ('processes','sessions');
NAME VALUE
-------------------- --------------------
processes 200
sessions 322
Processes 参数代表操作系统上能够并发向 Oracle 数据库发起的连接进程数量。如果该参
数设置过低,则在应用并非高时,超过 Processes 数量的进程将无法连接到数据库。所以在规
划数据库时,合理设置 Processes 参数是十分重要的。但是注意,很多时候由于应用的异常可
能导致业务环境的进程数量激增,所以在生产环境中对进程数量进行必要监控是必需的。
以下是一个生产环境中遇到的相关案例,数据库告警日志文件中记录了如下错误:
Thu Jul 17 14:40:18 2008
Process J001 died, see its trace file
Thu Jul 17 14:40:18 2008
kkjcre1p: unable to spawn jobq slave process
日志提示 J001 进程死掉,数据库不能创建 JOBQ 的从属进程(Slave Process)。 由 于 Job
书名书名书名书名书名书名书名书名书名书名书名书名书名书名
·2·
进程是动态创建的,如果数据库的进程数量超过,就可能出现 JOB 进程无法创建的问题。检
查相关的 TRACE 文件,可以发现如下错误信息
Died during process startup with error 20 (seq=14510)
OPIRIP: Uncaught error 20. Error stack:
ORA-00020: maximum number of processes (500) exceeded
数据库的提示是,最大数量的进程数量 500 超过,数据库不再允许更多的进程连接,此
时新的连接请求都会收到错误提示,甚至 DBA 也无法登陆数据库。除了重启数据库之外,
以通过 Kill 掉部分进程,然后通过 DBA 身份连接到数据库,诊断分析并解决具体问题。
但是由于 processes 参数是静态参数,修改该参数后需要重新启动数据库才能生效。在数
据库启动时,会预先为 Processes 分配内存地址空间,并向 Shared Pool 注册,所以该参数无法
动态修改。缺省的每个进程会在共享池中分配 4 Bytes 的注册空间:
SQL> select name,value from v$parameter where name ='processes';
NAME VALUE
-------------------- ------------------------------
processes 150
SQL> select * from v$sgastat where name='processes';
POOL NAME BYTES
------------ -------------------- ----------
shared pool processes 600
通常在创建数据库时,建议将该参数修改为 500
SQL> alter system set processes=500 scope=spfile;
System altered.
重启之后可以看到数据库进程内存分配的变化:
SQL> select name,value from v$parameter where name ='processes';
NAME VALUE
------------------------------ ------------------------------
processes 500
SQL> select * from v$sgastat where name='processes';
POOL NAME BYTES
------------------------ ------------------------------ ----------
shared pool processes 2000
3.2.2 操作系统依赖参数
某些参数的有效值或者取值范围依赖或者受限于操作系统比如 db_cache_size 参数,设
Oracle 使用的 Buffer Cache 内存大小,该参数的最大值就要受限于物理内存。这一类参数
通常被称为操作系统依赖参数
3.2.3 可变参数
of 41
10墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜