【體繫結構】Oracle參數介紹

来源:http://www.cnblogs.com/lhrbest/archive/2016/10/30/6013675.html
-Advertisement-
Play Games

【體繫結構】Oracle參數介紹 1 BLOG文檔結構圖 2 前言部分 2.1 導讀和註意事項 各位技術愛好者,看完本文後,你可以掌握如下的技能,也可以學到一些其它你所不知道的知識,~O(∩_∩)O~: ① Oracle中的各種參數介紹及其查詢方法 ② Oracle中V$PARAMETER及V$PA ...


體繫結構Oracle參數介紹

1  BLOG文檔結構圖

wpsCB0F.tmp 

 

2  前言部分

2.1  導讀和註意事項

各位技術愛好者,看完本文後,你可以掌握如下的技能,也可以學到一些其它你所不知道的知識,~O(∩_∩)O~

Oracle中的各種參數介紹及其查詢方法

OracleV$PARAMETERV$PARAMETER2的區別

隱含參數的查詢、重置、清除

會話參數和實例參數的查詢

靜態參數和動態參數、延遲參數

V$PARAMETER視圖的每列含義(重點)

Tips

本文在itpubhttp://blog.itpub.net/26736162)、博客園(http://www.cnblogs.com/lhrbest)和微信公眾號(xiaomaimiaolhr有同步更新

文章中用到的所有代碼相關軟體相關資料及本文的pdf版本都請前往小麥苗的雲盤下載小麥苗的雲盤地址見:http://blog.itpub.net/26736162/viewspace-1624453/

若網頁文章代碼格式有錯亂,下載pdf格式的文檔來閱讀

本篇BLOG,代碼輸出部分一般放在一行一列的表格中。其中,需要特別關註的地方我都用灰色背景和粉紅色字體來表示,比如下邊的例子中,thread 1的最大歸檔日誌號為33thread 2的最大歸檔日誌號為43是需要特別關註的地方;而命令一般使用黃色背景和紅色字體註;對代碼或代碼輸出部分的註釋一般採用藍色字體表示

  List of Archived Logs in backup set 11

  Thrd Seq     Low SCN    Low Time            Next SCN   Next Time

  ---- ------- ---------- ------------------- ---------- ---------

  1    32      1621589    2015-05-29 11:09:52 1625242    2015-05-29 11:15:48

  1    33      1625242    2015-05-29 11:15:48 1625293    2015-05-29 11:15:58

  2    42      1613951    2015-05-29 10:41:18 1625245    2015-05-29 11:15:49

  2    43      1625245    2015-05-29 11:15:49 1625253    2015-05-29 11:15:53

[ZHLHRDB1:root]:/>lsvg -o

T_XLHRD_APP1_vg

rootvg

[ZHLHRDB1:root]:/>

00:27:22 SQL> alter tablespace idxtbs read write;

====2097152*512/1024/1024/1024=1G

本文如有錯誤或不完善的地方請大家多多指正,ITPUB留言或QQ皆可,您的批評指正是我寫作的最大動力。

 

2.3  本文簡介

其實很早就想把楊廷琨大神的參數系列的文章整理一下了,一直沒空,最近寫書碰到了這裡問題,正好就抽空整理一下。

第二章 Oracle參數簡介

Oracle資料庫根據SPFILEPFILE中設置的參數來配置資料庫的啟動每個資料庫實例在啟動之前,首先讀取這些參數文件中設置的不同參數。Oracle系統中的參數,根據系統使用情況可以簡單分為兩大類:

l 普通參數Oracle系統正常使用的一些參數

l 非凡參數包括3種,過時參數、強調參數和隱參數。

wpsCB10.tmp 

3-8 Oracle參數分類

 

首先介紹一下參數的設置方法。初始化參數的設置方法有很多種:

l 通過“ALTER SYSTEM/SESSION SET 參數名=參數值 SCOPE = MEMORY;的方式僅在記憶體里修改。

l 通過“ALTER SYSTEM SET 參數名=參數值 SCOPE = SPFILE;的方式只修改SPFILE里的值。

l 通過“ALTER SYSTEM SET 參數名=參數值 DEFERRED SCOPE = SPFILE;的方式設置延遲生效,也就是說這個修改只對以後連接到資料庫的會話生效,而對當前會話以及其它已經連接到Oracle的會話不會生效。

l 通過“ALTER SYSTEM/SESSION SET 參數名=參數值 SCOPE = BOTH;”或省略BOTH這個關鍵詞可以同時修改SPFILEMEMORY中的值。

ALTER SESSIONALTER SYSTEM的區別如下:

ALTER SESSION

修改的參數只限於本次會話,退出會話再進入時修改失效

ALTER SYSTEM

修改的參數適用於資料庫實例的所有會話,資料庫關閉則修改失效。有特權用戶和DBA可以執行

ALTER SYSTEM DEFERRED

修改是延遲修改,退出會話,下次進入會話時生效。有特權用戶和DBA可以執行

Oracle參數變更生效範圍如下表所示:

wpsCB11.tmp 

RAC環境中,若想修改所有實例,則可以在ALTER SYSTEM的最後加上“SID='*'”“SID='實例名'”即可。“*”代表所有實例。

 

2.1   過時參數和強調參數

過時參數Obsolete Parameters,顧名思義就是在Oracle以前的版本中存在,但在新版本中已經淘汰了的參數,已經不再使用的參數。在視圖V$OBSOLETE_PARAMETER中,包含這些參數的名稱和一個列ISSPECIFIED,該列用來指出這個參數是否在參數文件中已實際設置。下麵的SQL腳本列出了當前系統中所有的過時參數名稱以及它們是否在當前系統中設定。

SELECT   NAME, ISSPECIFIED FROM V$OBSOLETE_PARAMETER;

強調參數(Underscored Parameters),是指那些在新版本中保留了下來,但是除非非常需要否則不希望用戶使用的那些參數。強調參數可以通過系統視圖X$KSPPO來查看,該視圖中包含一個名為KSPPOFLAG的欄位。該欄位用來指明該參數在當前版本中是被丟棄還是被強調。若該值為1,則表示該參數已被丟棄,若該值為2,則表明該參數現為強調參數。

SYS@lhrdb> SELECT KSPPONM, DECODE(KSPPOFLG, 1, 'Obsolete', 2, 'Underscored')

  2    FROM X$KSPPO T

  3     WHERE T.KSPPONM IN ('hash_join_enabled','job_queue_interval')

  4   ORDER BY KSPPONM;

KSPPONM                                                          DECODE(KSPP

---------------------------------------------------------------- -----------

hash_join_enabled                                                Underscored

job_queue_interval                                               Obsolete

 

可以看到HASH_JOIN_ENABLED這個參數為強調參數,在隱含參數中表現為_HASH_JOIN_ENABLED,而JOB_QUEUE_INTERVAL已變為了過時參數。

2.2   隱含參數

Oracle系統中還有一類參數稱之為隱含參數(Hidden Parameters),在系統中使用,但Oracle官方沒有公佈的參數,這些參數可能是那些還沒有成熟或者是系統開發中使用的參數。這些參數在所有Oracle官方提供的文檔中都沒有介紹,它們的命名有一個共同特征就是都以“_”作為參數的首字元。下麵的查詢可以得到當前系統中的所有隱藏參數,需要以SYS用戶登陸,查看兩個視圖:X$KSPPIX$KSPPCV下麵作者給出具體的SQL語句。

SET PAGESIZE 9999

SET LINE 9999

COL NAME FORMAT A40

COL KSPPDESC FORMAT A50

COL KSPPSTVL FORMAT A20

SELECT A.INDX,

       A.KSPPINM NAME,

       A.KSPPDESC,

       B.KSPPSTVL

FROM   X$KSPPI  A,

       X$KSPPCV B

WHERE  A.INDX = B.INDX

AND A.KSPPINM LIKE '/_%' ESCAPE '/'

AND LOWER(A.KSPPINM) LIKE  LOWER('%&PARAMETER%');

舉個例子,如果需要查詢隱含參數_LM_DD_INTERVAL的值,那麼執行上面的代碼後輸入_LM_DD_INTERVAL就可以看到該隱含參數的值了,如下所示:

SYS@lhrdb> SET PAGESIZE 9999

SYS@lhrdb> SET LINE 9999

SYS@lhrdb> COL NAME FORMAT A40

SYS@lhrdb> COL KSPPDESC FORMAT A50

SYS@lhrdb> COL KSPPSTVL FORMAT A20

SYS@lhrdb> SELECT A.INDX,

  2         A.KSPPINM NAME,

  3         A.KSPPDESC,

  4         B.KSPPSTVL

  5  FROM   X$KSPPI  A,

  6         X$KSPPCV B

  7  WHERE  A.INDX = B.INDX

  8  AND A.KSPPINM LIKE '/_%' ESCAPE '/'

  9  AND LOWER(A.KSPPINM) LIKE  LOWER('%&PARAMETER%');

Enter value for parameter: _lm_dd_interval

old   9: AND LOWER(A.KSPPINM) LIKE  LOWER('%&PARAMETER%')

new   9: AND LOWER(A.KSPPINM) LIKE  LOWER('%_lm_dd_interval%')

      INDX NAME                                     KSPPDESC                                           KSPPSTVL

---------- ---------------------------------------- -------------------------------------------------- --------------------

       578 _lm_dd_interval                          dd time interval in seconds                        10

 

可以看到該隱含參數的值為10

對於隱含參數而言,修改隱含參數的值的時候需要將隱含參數用雙引號括起來。若要清除SPFILE中的隱含參數可以使用RESET命令。

SYS@lhrdb> alter system set _lm_dd_interval=20 scope=spfile;

alter system set _lm_dd_interval=20 scope=spfile

                 *

ERROR at line 1:

ORA-00911: invalid character

 

 

SYS@lhrdb> alter system set "_lm_dd_interval"=20 scope=spfile;

 

System altered.

 

SYS@lhrdb> alter system reset "_lm_dd_interval"  scope=spfile sid='*';

 

System altered.

 

 

普通用戶是不具備查詢隱含參數的許可權的,可以通過創建視圖和同義詞的方式來解決這個問題,如下所示:

CREATE OR REPLACE VIEW VW_YH_PARAMETER_LHR AS

SELECT A.INDX, A.KSPPINM NAME, A.KSPPDESC, B.KSPPSTVL

  FROM X$KSPPI A, X$KSPPCV B

WHERE A.INDX = B.INDX

   AND A.KSPPINM LIKE '/_%' ESCAPE '/' --TRANSLATE (ksppinm, '_', '#') LIKE '#%'

   ;

GRANT SELECT  ON  VW_YH_PARAMETER_LHR TO PUBLIC;

CREATE PUBLIC SYNONYM VW_YH_PARAMETER_LHR FOR SYS.VW_YH_PARAMETER_LHR;

 

2.3   普通參數(系統當前參數

註意:本小節內容多數來源於楊廷琨老師的博客。

1、普通參數

普通參數就是Oracle系統正常使用的一些參數。查詢Oracle初始化參數的方式大約有如下幾種:

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 學習完第一行代碼後,繼續學習Android群英傳,希望能堅持下去,好好學習完這本書,並及時做好相關筆記,鞏固相關知識; 一. View的介紹: 1`.我們先來看下view樹結構: 2.樹結構內容: a.viewparent是整棵樹的核心,它統一調度和分配所有的交互管理事件。 b.控制項分為viewgr ...
  • ...
  • 前言 啦啦啦~又要和大家一起學習Android開發啦,博主心裡好激動噠~ 在上篇博文中,我們通過線性佈局和基礎組件的使用,完成了一個簡單的學生課外體育積分電子認證系統的界面,本篇博文,將和大家一起熟悉Button、RadioButton、EditText等基本控制項,探討能夠處理這些控制項的基本事件,學 ...
  • 先說下基本動畫部分 基本動畫部分比較簡單, 但能實現的動畫效果也很局限 使用方法大致為: #1. 創建原始UI或者畫面 #2. 創建CABasicAnimation實例, 並設置keypart/duration/fromValue/toValue #3. 設置動畫最終停留的位置 #4. 將配置好的動 ...
  • 前言 學習本系列內容需要具備一定 HTML 開發基礎,沒有基礎的朋友可以先轉至 "HTML快速入門(一)" 學習 本人接觸 React Native 時間並不是特別長,所以對其中的內容和性質瞭解可能會有所偏差,在學習中如果有錯會及時修改內容,也歡迎萬能的朋友們批評指出,謝謝 文章第一版出自簡書,如果 ...
  • SwipeMenuListView(滑動菜單) A swipe menu for ListView.--一個非常好的滑動菜單開源項目。 Demo 一、簡介 看了挺長時間的自定義View和事件分發,想找一個項目練習下。。正好印證自己所學。 在github上找到了這個項目:SwipeMenuListVi ...
  • Oracle的推導參數(Derived Parameters)其實是初始化參數的一種。推導參數值通常來自於其它參數的運算,依賴其它參數計算得出。官方文檔關於推導參數(Derived Parameters)的概念如下: Derived Parameters Some initialization pa... ...
  • 1.在查詢結果中不顯示重覆記錄 查詢時不顯示重覆記錄主要應用了 DISTINCT 關鍵字,該關鍵字用於刪除重覆記錄。 在實現查詢操作時,如果查詢的選擇列表中包含一個表的主鍵,那麼每個查詢中的記錄都將是唯一的(因為主鍵在每一條記錄中有一個不同的值);如果主鍵不包含在查詢結果中,就可能出現重覆記錄。使用 ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...