您的位置:首页 > 数据库

设置数据库初始化参数

2014-02-13 22:15 267 查看
第二章  数据库的安装和创建,通过实践来完成,已写成日志<LINUX下安装ORACLE 11G》

第三章  实例管理

数据库和实例由一组初始化参数进行控制。数据数目很多,其中有约33个是真正重要的。这些参数决定了下列这些设置,例如,实例要求操作系统在启动时分配的内存量,控制文件和重做日志文件的位置以及数据库名称。默认参数值并不适合于大多数的生产情况,但对于运行学习环境来说是可以的。许多DBA不太敢修改这些参数,其实并不可怕,这只是一堆在配置后很少更改的设置。当发生问题时,警报日志和跟踪文件的作用是相当重要的,ORACLE特意设计了一组用于快速定位相关文件的初始化参数。当需要重启公司的生产数据库,而公司高层又一直盯着您解决此问题时,这是特别有用的。对于DBA来说,警报日志文件可能算得上是最重要的文件,因为它包含了在实例上发生的关键事件的记录,记录像启动,关闭等事件和严重错误情况。跟踪文件通常由后台和服务器进程生成,和警报日志文件一样,提供提示消息和错误消息的混合内容。熟悉这些文件是很重要的。

3.1设置数据库初始化参数

实例由用于在内存中构建它的参数进行定义。许多参数可以在启动后更改。有些参数在启动时就固定了,只能在关闭实例并再次启动时更改。

用于构建实例的参数最初源于参数文件(静态pfile或动态spfile)或默认值。除DB——NAME参数外,每个参数都有默认值。全部算起来,DBA可以设置将近300个参数,实际上,还有1500个不需要DBA设置的隐藏参数,这些参数通常不见,只能在Oracle Suppot 的指导下进行设置。

这将近300个参数分为“基本参数”和”高级参数“两类。只要高级参数使用了默认值设置,大多数的数据库可以完美运行。只有大约33个参数是基本参数,因此,设置参数并非是一项极大的任务,但它是一项极为重要的任务。

3.1.1静态参数和动态参数以初始化参数文件

要查看参数及其当前值,可以查询V$PARAMETER视图:

select  name,value from v$parameter order by name;

下列查询的结果略有不同:

select name,value from v$spparameter order by name;

差异在于从中获取参数名和值的视图。V$PARAMETER显示当前在运行的实例中生效的参数值。V$SPPARAMETER显示磁盘上spfile中存储的值。通常情况下,它们是相同的,但有时则不然。要使用SQL*PLUS更改参数,请使用ALTER SYSTEM 命令。

如:

SQL>alter system set db_create_file_dest='C:\oratuo' scope=spfile;

System altered

如果不将SCOPE 指定为SPFILE,将无法更改静态参数。scope的默认值是BOTH,即作用于运行中的实例和spfile,如果使用pfile启动实例,那么设置SCOPE=SPFILE将失败。

3.1.2 基本参数

基本实例参数是应该为每个数据库使用的参数。某些情况下,使用默认值是不错的选择。要查看基本参数及其当前值,可以使用下面类似的查询:

select name,value from v$parameter where isbasic='TRUE' order by name;





更改参数

要更改静态参数,只能使用包含SCOPE=SPFILE子句的ALTER SYSTEM命令。记住,此命令更新spfile。按照定义静态参数不能立即生效。LOG——BUFFER是一个表态参数的示例。为了将日志缓冲区的大小更改为6M,发生此命令:

alter system set log_buffer=6M;

命令将失败,必须使用SCOPE=SPFILE子句进行更改。这个命令将成功,但新值只有在重新启动实例后才生效。

可以应用于实例,但也可以针对各个会话进行调整的参数示例是OPTMIZER  _MODE。

有些参数只能在会话级别进行修改。其中最主要的是NLS_DATE_FORMAT。此参数控制数据和时间值的显示,可以在参数文件中指定。但不能使用ALTER SYSTEM进行更改。就实例而言,它是静态参数。但可以在会话级别对其进行调整。

alter session set nls_date_format='dd-mm-yy hh24:mi:ss';

这将在不影响其他任何会话的情况下,把当前会话的日期\时间显示格式更改为“欧洲”格式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: