oracle之spfile与pfile

前端之家收集整理的这篇文章主要介绍了oracle之spfile与pfile前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
pfile(Initialization Parameter File)用于Oracle8i,在oracle9i中也可以用,以文本形式存在,可以用文本编辑器对其中参数进行修改
spfile(Server-Side Initialization Parameter File)用于oracle9i,以二进制文本形式存在,不能用文本编辑器对其中参数进行修改。Spfile改正了pfile管理混乱的问题,在多结点的环境里,pfile会有多个image,启动时候需要跟踪最新的image。这是个烦琐的过程。用spfile以后,所有参数改变都写到spfile里面(只要定义scope=spfile或both)

1.查看spfile location(Show parameter pfile/spfile;)
  1. showparameterspfile

2.从spfile获取pfile
sqlplus/nolog
  • connect/assysdba
  • Createpfile='d:pfileSID.ora'fromspfile;
  • fromspfile='spfile_location';

  • 3.从pfile获取spfile
    shutdownimmediate
  • Createspfilefrompfile='Your_pfile_location'
  • Createspfile='spfile_location'frompfile='Your_pfile_location'

  • 4.动态修改参数
    altersystemsetparameter=Valuescope=spfile|both|memory

    (1)scope=spfile
    对参数的修改仅记录在服务器初始化参数文件中。该选项同时适用于动态与静态的初始化参数。修改后的参数只有下一次启动数据库时更改才会生效。
    (2)scope=memory
    对参数的修改记录在内存中,对于动态初始化参数,更改立即生效。修改并不会被记录在服务器端的初始化参数中。下一次启动数据库时更改失效,不能用于静态初始化参数。
    (3)scope=both
    对参数的修改同时记录在内存中和服务器端的初始化参数文件中。为默认使用值。
    6.查看初始化参数
    showparameters

    7.执行startup时,按如下顺序寻找初始化参数文件
    (1)spfile.ora
    (2)pfile.ora
    (3)都没找到,则在默认位置寻找默认名称的服务器端初始化参数文件
    (4)还没找到,则在默认位置寻找默认名称的文本初始化参数文件
    8.查看系统全局区大小:
    showsga;
  • select*fromv$sga;

  • 9.使用pfile/spfile启动数据库
    如果你想使用pfile启动数据库,你可以在启动时指定pfile或者删除spfile.
    startuppfile='E:\Oracle\admin\eyglen\pfile\init.ora';

    你不能以同样的方式指定spfile,但是可以创建一个包含spfile参数的pfile文件,指向spfile.
    SPFILE是一个自Oracle9i引入的初始化参数,类似于IFILE参数。SPFILE参数用于定义非缺省路径的spfile文件。可以在PFILE链接到SPFILE文件,同时在PFILE中定义其他参数,如果参数重复设置,后读取的参数将取代先前的设置。
    10. 查看系统是以pfile还是spfile启动
    (1)查询v$parameter动态视图,如果以下查询返回空值,那么你在使用pfile.
    SELECTname,valueFROMv$parameterWHEREname='spfile';

    (2)可以使用SHOW命令来显示参数设置,如果以下结果value列返回空值,那么说明你在使用pfile:
    SHOWPARAMETERspfile
    (3)查询v$spparameter视图
    如果以下查询返回0值,表示你在使用pfile,否则表明你使用的是spfile:
    SELECTCOUNT(*)FROMv$spparameterWHEREvalueISNOTNULL;
    或者使用以下查询,如果true值返回非0值,那么说明我们使用的是spfile.
    selectisspecified,count(*)fromv$spparametergroup
  • byisspecified;

  • 11.修改Oracle最大连接数
    a、以sysdba身份登陆PL/sql 或者 Worksheet
    b、查询目前连接数
    Java代码
      showparameterprocesses;

    c、更改系统连接数
    altersystemsetprocesses=1000scope=spfile;
    d、创建pfile
    createpfilefromspfile;
    e、重启Oracle服务或重启Oracle服务器
    12.查询Oracle游标使用情况的方法
    select*fromv$open_cursorwhereuser_name='TRAFFIC'
    13.查询Oracle会话的方法
    select*fromv$session
    14.关于init.ora.XXXXXXXX
    init.ora.XXXXXXXX在$ORACLE_BASE/admin/{SID}/pfile/目录下。当database 通过DBCA (Database creation assistant)创建的时候,DBCA将创建一个init.ora文件用来创建database,这个时候,他将利用刚才创建的init.ora文件来创建spfile,然后再修改init.ora文件名到一个类似init.ora.XXXXXXXX。
    XXXXXXXX is a timestamp of a sort。This init.ora.XXXXXXXX will not be used by Oracle afterwards,so modifiying it will not change the init parameters。
    15. oracle中限制指定用户的连接数
    1、修改系统配置
    alter system set resource_limit=true;
    2、建一个profile文件,如jk_ip_sess,限制每个用户连接最多10个
    create profile jk_ip_sess limit SESSIONS_PER_USER 10;
    3、指定用户限制资源。
    alter user inter_user profile jk_ip_sess; 原文链接:https://www.f2er.com/oracle/207307.html

    猜你在找的Oracle相关文章