Decode360's Blog

          業精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
            397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
          Oracle啟動文件基礎
          ?
          ??? Oracle啟動文件的重要性就不說了,總之就是非常重要。之前對這一塊的了解還是比較混亂,所以這次在學習DBA知識之前,先把這一塊仔細學習一下。以下內容基本上是網上找的資料,因為來源比較多,而且內容也都是重復,轉載地址就不列舉出處了。
          ?
          1、查看數據庫是否由SPFILE啟動:
          ?
          SQL> Select isspecified,count(*) from v$spparameter group by isspecified;
          ?
          ISSPECIFIED?? COUNT(*)
          ----------- ----------
          FALSE????????????? 225
          TRUE??????????????? 34
          ?
          V$SPPARAMETER Description: V$SPPARAMETER displays information about the contents of the server parameter file. If a server parameter file was not used to start the instance, then each row of the view will contain FALSE in the ISSPECIFIED column.
          ?
          ??? 從v$spparameter的說明來看,只要是該視圖中有TRUE項,即表示該數據庫由SPFILE啟動。
          ?
          ?
          2、查看SPFILE所在地址:
          ?
          SQL> show parameter spfile
          ?
          NAME???????????????????????????????? TYPE??????? VALUE
          ------------------------------------ ----------- ------------------------------
          spfile?????????????????????????????? string????? %ORACLE_HOME%\DATABASE\SPFILE%ORACLE_SID%.ORA
          ?
          ??? 這個就是基本的默認路徑了。
          ?
          ?
          3、SPLIFE的意義:
          ?
          ??? 在9i之前,參數文件只有PFILE一種,是文本格式的。從9i開始新增了服務器參數文件,即SPFILE,是二進制格式,無法直接手動修改。
          ??? 現在這兩種參數文件都可以用來存儲參數配置以供Oracle讀取,但也有不同點,注意以下幾點:
          ??? 第一:PFILE是文本文件,SPFILE是二進制文件;
          ??? 第二:對于參數的配置,PFILE可以直接以文本編輯器打開手工配置,而SPFILE不行,必須在數據庫啟動后,通過sql命令進行在線修改;
          ??? 第三:PFILE配置改變后,必須重新啟動數據庫后才能生效,SPFILE的配置生效時限和作用域可由SQL命令指定。(有些參數的修改必須重啟數據庫才能生效);
          ??? 第四: 可用SQL命令由PFILE創建SPFILE,也可以由SPFILE創建PFILE;
          ??? 第五: 如果是手動創建數據庫而不是通過DBCA,則開始創建數據庫時,你只能定義PFILE ,因為它是文本格式的;
          ??? 第六: Oracle啟動只使用一個參數文件,要么是PFILE,要么是SPFILE,可以通過create pfile方法來鑒別,也可以用show parameter spfile命令,如果值為空,則表示使用的是pfile
          ?
          ??? SPFILE改正了PFILE管理混亂的問題。在多結點的環境里,PFILE會有多個 IMAGE 啟動時候需要跟蹤最新的IMAGE,這是個煩瑣的過程。用SPFILE以后,所有參數改變都寫到SPFILE里面(只要定義scope=spfile或both),參數配置有個權威的來源。
          ?
          ?
          4、SPFILE/PFILE的創建:
          ?
          ??? spfile獲取pfile
          ?

          ??? Create pfile = 'pfile_location' from spfile ;

          ??? Create pfile = 'pfile_location' from spfile = 'spfile_location' ;

          ?
          ??? pfile獲取spfile

          ??? Create spfile from pfile = 'pfile_location' ;

          ??? Create spfile = 'spfile_location' from pfile = 'Your_pfile_location' ;

          ?
          ??? 注:可以通過先從SPFILE創建PFILE,然后修改新生成的PFILE,再重新生成SPFILE,這樣會“比較”安全一些。
          ??? 另:要修改當前在使用的參數文件,必須將數據庫先關閉,然后重啟生效。必須是SHUTDOWN,STARTUP NOMOUNT也不行。
          ?
          ?
          5、動態修改參數:
          ?
          ??? alter system set parameter=Value scope=spfile|both|memory;
          ?
          ??? MEMORY:只改變當前實例運行
          ??? SPFILE:只改變SPFILE的設置
          ??? BOTH:改變實例及SPFILE
          ?
          ??? alter session set parameter=Value;
          ?
          ??? 也可通過這樣來改變當前實例的參數
          ?
          ?
          6、強制使用PFILE啟動:
          ?
          ??? SQL> startup pfile='Your_Pfile.ora';
          ?
          ?
          7、Oracle啟動時的判定:
          ?
          ??? Oracle先去找SPFILE,若沒有找到則使用PFILE啟動,或還沒有,通過DBS文件夾下的INIT.ORA啟動。
          ?
          ?
          ?
          posted on 2008-11-04 21:15 decode360 閱讀(563) 評論(0)  編輯  收藏 所屬分類: 08.DBA
          主站蜘蛛池模板: 桐乡市| 古田县| 长泰县| 定结县| 双峰县| 花莲市| 财经| 麟游县| 陈巴尔虎旗| 墨脱县| 视频| 芦溪县| 西乌珠穆沁旗| 凤城市| 盐城市| 北安市| 鸡泽县| 兴海县| 英德市| 辰溪县| 鹤岗市| 古浪县| 上犹县| 宕昌县| 都昌县| 泸水县| 广德县| 班戈县| 密山市| 剑河县| 嘉义县| 乳山市| 永川市| 定西市| 北安市| 龙井市| 泰宁县| 寿光市| 得荣县| 灵川县| 大足县|