Welcome 微信登录

首页 / 数据库 / MySQL / Oracle存储结构之参数文件

Oracle的参数文件非常之多,但最重要的当属数据库参数文件。而数据库参数文件有pfile和spfile两类。pfile需手动修改,是文本文件;spfile是二进制文件,可动态更改。之所以会有spfile,原因有:1)可以杜绝参数文件的繁殖。我们知道,在客户端若要启动数据库,则需要pfile。spfile总是存在于数据库的服务端主机本身,不能置于客户端,从而保证了信息的一致性;2)spfile可以用alter system命令修改到spfile里面,不需要手动更改。通常,为了保证简单性,oracle建议,把spfile默认存储。没有参数文件,就无法启动一个oracle数据库。可见,数据库参数文件还是蛮重要的。我们可以用v$parameter视图来查询参数值,或者show parameter也行哈。个人感觉show parameter比较好用,因为它可以通配,默认%参数值%;而v$parameter的优点,则可以查出多个字段,比较准确定位我们要的信息。oracle在nomount阶段的任务就是读取参数文件,在$ORACLE_HOME/dbs下查找,寻找的顺序是spfile<ORACLE_SID>.ora, spfile.ora , init<ORACLE_SID>.ora接下来我们来谈谈spfile和pfile的几个常见操作。  关于几个spfile的操作如下:
  1)转换为spfile:(在nomount状态下操作)
  show parameter spfile; --查看是否使用了spfile
  create spfile from pfile; --注意使用默认位置存储
  startup force; --重新启动
  show parameter spfile;  2)设置spfile中的值
  alter system set parameter=value <comment="text"> <deferred>
       <scope=memory|spfile|both>
       <sid="sid|*">
  comment:注释。在v$parameter里面的update_comment字段可查。
  deferred:为新建立的会话生效
  scope:作用域。  3)取消spfile的设置
  alter system reset parameter <scope=memory|spfile|both> sid=<"sid|*">
  这里的sid是必选的。单实例可用默认值sid=‘*’  4)从spfile创建pfile
  create pfile=filename from spfile;  5)修正被破坏的spfile
  借助告警日志的内容创建pfile,再用create spfile转换一个spfile  我们对于pfile的使用大概有两种:http://www.linuxidc.com
  1)用pfile来启动数据库
  startup pfile=‘filename’;
  2)用pfile来创建spfile
  create spfile from pfile=‘filename’; 下面我们贴一个spfile的全部内容,并大概看一下里面的东西。  以下是spfile的内容,我们大致来看看:
  [oracle@localhost dbs]$ strings spfileorcl.ora
orcl.__db_cache_size=176160768
orcl.__java_pool_size=4194304
orcl.__large_pool_size=4194304
orcl.__shared_pool_size=54525952
orcl.__streams_pool_size=0
/*********************我是分割线***********/
以上这段是对SGA的分配
/*********************我是分割线***********/
*.audit_file_dest="/u01/app/oracle/admin/orcl/adump"
*.background_dump_dest="/u01/app/oracle/admin/orcl/bdump"  /*告警日志的位置*/
*.compatible="10.2.0.1.0"  /*版本*/
*.control_files="/u01/app/oracle/oradata/ORCL/controlfile/o1_mf_7xzsjpnk_.ctl","/u01/app/oracle/flash_recovery_area/ORCL/controlfile/o1_mf_7xzsjq6j_.ctl"  /*控制文件的位置*/
*.core_dump_dest="/u01/app/oracle/admin/orcl/cdump"
*.db_block_size=8192         /*数据库默认数据块的大小*/
*.db_create_file_dest="/u01/app/oracle/oradata"
*.db_domain="oracle.com"
*.db_file_multiblock_read_count=16
*.db_name="orcl"              /* 数据库名称,数据库启动的最小参数*/
*.db_recovery_file_dest="/u01/app/oracle/flash_recovery_area"
*.db_recovery_file_dest_size=2147483648
*.dispatchers="(PROTOCOL=TCP) (SERVICE=orclXDB)"
*.job_queue_processes=10
*.open_cursors=300
*.pga_aggregate_target=81788928
*.processes=150
*.remote_login_passwordfile="EXCLUSIVE"   /*口令文件的可选参数*/
.sga_target=243269632
*.undo_management="AUTO"   /*undo表空间的管理方式*/
*.undo_tablespace="UNDOTBS1"
*.user_dump_dest="/u01/app/oracle/admin/orcl/udump"  /*跟踪文件的存放位置,比如你设置了alter system set SQL_TRACE=true,那么它的内容的会保存在这里*/Oracle 体系结构总体认识各类型表空间的创建、扩展、删除相关资讯      Oracle存储结构  Oracle参数 
  • Oracle升级中的参数补充  (05月31日)
  • Oracle 参数调优  (04/12/2015 18:05:19)
  • Oracle初始化参数之memory_target  (10/08/2014 13:21:41)
  • Oracle物理存储结构简述  (05/27/2015 08:37:00)
  • 获取Oracle隐含参数信息  (11/05/2014 09:58:10)
  • Oracle动态服务器参数文件  (09/26/2014 19:36:24)
本文评论 查看全部评论 (0)
表情: 姓名: 字数