ORACLE之SPFILE与PFILE

    通过查阅书籍与诸位网友的博客,然后通过自己的理解总结了这篇文章.

    数据库实例在启动时,回去读取参数文件.其目的是为了获取数据库控制文件名及其路径,数据库的物理结构等信息.它是进行数据库设计与性能调优的重要文件

    该参数文件分为两种:初始化参数文件,服务器参数文件.

    1.初始化参数文件(Initialization Parameters Files):在文件属于文本文件.在9i之前一直使用PFILE方式来存储初始化参数.

    2.服务器参数文件(Server Parameters Files):该文件(SPFILE)数据二进制文件.从9i开始导入该类文件.


    接下来介绍一下他们的区别

  •     文件类型

    • SPFILE文件属二进制文件.那么想通过手动修改文件中参数信息是不可能的.所以只能通过SQL命令来修改

    • PFILE文件属于文本文件.也就是说可以通过文本编辑器来直接手动修改各个参数.

      思考:为什么oracle在9i后导入了SPFILE这样的二进制文件呢?

  • 即时生效

    • 对于SPFILE来说,通过SQL命令修改某个参数信息后,便会即时生效.

    • 而PFILE,则需要重启数据库实例才会生效.

      思考:为什么修改SPFILE中参数时会立即生效,而PFILE却需要重启实例呢.它是如何做到的呢?

  • 读写操作

    • SPFILE:可读可写.(不可以手动直接修改文件)

    • PFILE:可读不可写.(没有办法通过SQL命令修改)

  • 当手动创建数据库,而不是通过DBCA时,则只能定义PFILE.

    思考:为什么只能定义PFILE?


修改PSFILE时的三种模式:

scope=both    立即并永久生效

scope=spfile  重启数据库实例时才会生效

scope=memory  即时生效,但重启数据库实例后失效


以上.


致亲爱的战友们:

    其实我才刚刚结束oracle不久,有很多不解的地方.例如本篇文章中各个红色字体思考的内容.所以如果有哪位朋友知道其答案的话,希望能留下答案.我会感激不尽.

你可能感兴趣的:(oracle,二进制,服务器,数据库设计,文本文件)