【轉載】oracle之spfile與pfile

來源:互聯網
上載者:User

標籤:blog   http   io   ar   使用   sp   java   strong   檔案   

   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;) 

Sql代碼  
  1. show parameter spfile  



2.從spfile擷取pfile 

Sql代碼  
  1. sqlplus /nolog  
  2. connect / as sysdba  
  3. Create pfile=‘d:pfileSID.ora‘ from spfile;  
  4. Create pfile=‘d:pfileSID.ora‘ from spfile=‘spfile_location‘;  



3.從pfile擷取spfile 

Sql代碼  
  1. shutdown immediate  
  2. Create spfile from pfile=‘Your_pfile_location‘  
  3. Create spfile=‘spfile_location‘ from pfile=‘Your_pfile_location‘  



4.動態修改參數 

Sql代碼  
  1. alter system set parameter=Value scope=spfile|both|memory  


(1)scope=spfile 
對參數的修改僅記錄在伺服器初始化參數檔案中。該選項同時適用於動態與靜態初始化參數。修改後的參數只有下一次啟動資料庫時更改才會生效。 
(2)scope=memory 
對參數的修改記錄在記憶體中,對於動態初始化參數,更改立即生效。修改並不會被記錄在伺服器端的初始化參數中。下一次啟動資料庫時更改失效,不能用於靜態初始化參數。 
(3)scope=both 
對參數的修改同時記錄在記憶體中和伺服器端的初始化參數檔案中。為預設使用值。 

6.查看初始化參數 

Sql代碼  
  1. show parameters  



7.執行startup時,按如下順序尋找初始化參數檔案: 
(1)spfile.ora 
(2)pfile.ora 
(3)都沒找到,則在預設位置尋找預設名稱的伺服器端初始化參數檔案。 
(4)還沒找到,則在預設位置尋找預設名稱的文本初始化參數檔案。 

8.查看系統全域區大小: 

Sql代碼  
  1. show sga;   
  2. select * from v$sga;  



9.使用pfile/spfile啟動資料庫 
如果你想使用pfile啟動資料庫,你可以在啟動時指定pfile或者刪除spfile. 

Sql代碼  
  1. startup pfile=‘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. 

Sql代碼  
  1. SELECT name,value FROM v$parameter WHERE name=‘spfile‘;  


(2)可以使用SHOW命令來顯示參數設定,如果以下結果value列返回空值,那麼說明你在使用pfile: 

Sql代碼  
  1. SHOW PARAMETER spfile  


(3)查詢v$spparameter視圖 
如果以下查詢返回0值,表示你在使用pfile,否則表明你使用的是spfile: 

Sql代碼  
  1. SELECT COUNT(*) FROM v$spparameter WHERE value IS NOT NULL;  


或者使用以下查詢,如果true值返回非0值,那麼說明我們使用的是spfile. 

Sql代碼  
  1. select isspecified, count(*) from v$spparameter group  
  2.  by isspecified;  



11.修改Oracle最大串連數 
  a、以sysdba身份登陸PL/SQL 或者 Worksheet 
  b、查詢目前串連數 
     

Java代碼  
  1. show parameter processes;  


  c、更改系統串連數 
     

Java代碼  
  1. alter system set processes=1000 scope=spfile;  


  d、建立pfile 
    

Java代碼  
  1. create pfile from spfile;  


  e、重啟Oracle服務或重啟Oracle伺服器 

12.查詢Oracle遊標使用方式的方法 
  

Java代碼  
  1. select * from v$open_cursor where user_name = ‘TRAFFIC‘;  


13.查詢Oracle會話的方法 
  

Java代碼  
  1. select * from v$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; 

 

 

 

 

轉載於:http://log-cd.iteye.com/blog/319280

【轉載】oracle之spfile與pfile

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.