Oracle中利用DETERMINISTIC聲明提高效能(二) 參數順序對效能的影響

雖然Oracle提供的DETERMINISTIC聲明,本意是確保函數的確定性,但是如何合理利用,是可以用來提高效能的。這一篇描述參數順序對效能的影響。上一篇文章提到了,如果希望通過DETERMINISTIC來擷取效能收益,那麼採用批量方式是必須的,而且數組的值相對而言越大對於效能的協助會越大。但是這裡存在一個問題,如果需要處理的資料量本身很大,雖然重複的輸入參數不少,但是總的參數不同的值更多,那麼即使將ARRAY的值設定到1000,能帶來的效能收益也很有限,因為即使1000次調用,也不能保證參數

Oracle中PARALLEL_MAX_SERVERS參數的設定

PARALLEL_MAX_SEVERS參數設定並存執行可用的最大進程數量,該參數的預設值如下得出:1.當PGA_AGGREGATE_TARGET >0時PARALLEL_MAX_SERVERS= (CPU_COUNT x PARALLEL_THREADS_PER_CPU x 10)2.當PARALLEL_MAX_SERVERS未設定PARALLEL_MAX_SERVERS=(CPU_COUNT x PARALLEL_THREADS_PER_CPU x

Oracle預存程序中去掉重複字串函數

以下函數是本人在編寫Oracle資料庫預存程序時寫的函數,覺得該函數通用性較強,因此發表出來供需要的人蔘考。這個函數的功能主要是用於去除給定字串中重複的字串.在使用中需要指定字串的分隔字元.樣本:str := MyReplace('13,14,13,444', ',');輸出:13,14,444create or replace function MyReplace(oldStr varchar2, sign varchar2) return varchar2 is str varchar2(1

Oracle 11g r2全外串連最佳化執行計畫(三)NATIVE_FULL_OUTER_JOIN提示

雖然上一篇介紹了NATIVE_FULL_OUTER_JOIN和NO_NATIVE_FULL_OUTER_JOIN兩個HINT,但是實際上NATIVE_FULL_OUTER_JOIN並沒有發揮任何的作用,因為Oracle對全外串連的最佳化使得新的執行計畫的代價比原始執行計畫要低,所以Oracle預設就選擇這個執行計畫,因此看不到NATIVE_FULL_OUTER_JOIN提示的效果。SQL> SET AUTOT ONSQL> SELECT T1.ID, T2.ID2  FROM T1

Oracle資料庫去除別名的方法

本人曾經用Personal Oracle+Developer2000開發了一些程式,當移植到ORACLE FOR NT的時候發現有些功能出現了出錯提示。經研究發現原來是使用者沒有能正常串連。由於在developer2000串連personal oracle時不需要別名(alias),直接寫入使用者名稱/密碼則可。而在OracleFOR

ORACLE 10053事件詳解

本次我們主要講解oracle 10053事件和實驗,好多朋友可能對這個事件不是很熟悉,因為在日常營運中用到的不是很多。Oracle 10046和10053都是非官方trace sql的方法,在官方文檔上是找不到相關資料的,但在MOS上可以找到。sql_trace是官方推薦的trace

Oracle Forms中多用途代碼

幾年前,當Oracle放棄用戶端的Forms的時候,隨之消失的那些內建的函數中有一項是關於向警告訊息函數(alert message

Oracle RMAN如何配置EXCLUDE FOR TABLESPACE

簡單描述一下RMAN的CONFIGURE EXCLUDE FOR TABLESPACE命令。RMAN可以通過CONFIGURE EXCLUDE FOR TABLESPACE設定全庫備份的時候是否跳過一些資料表空間。一般情況下,可以通過這個命令使得全庫備份的時候跳過唯讀或OFFLINE資料表空間來減少全庫備份所需時間以及所佔用的空間。一個客戶就使用了這個配置,在備份開始之前CONFIGURE EXCLUDE FOR

Oracle RMAN備份(五)增量備份

九. 增量備份通過增量備份,RMAN 允許使用者只備份上次增量備份以來被修改過的資料區塊。 增量備份具有以下有點:(1)更少的使用磁碟或磁帶(2)降低網路寬頻要求(3)節約備份時間可以在聯機或離線模式,Archivelog 模式或者noarchivelog 模式中執行增量備份。 一旦選擇了增量備份策略,就會在效益方面的問題。 如果顯著減少了整個備份操作的時間,在恢複操作方面就會投入更多的時間。 這是因為如果使用增量備份策略,Oracle

Oracle RMAN備份(四)副本

八. 副本8.1 映像副本的介紹RMAN 可以建立資料庫資料檔案,歸檔重做日誌或者控制檔案的完全重複項。 Rman 副本是這些檔案的副本,區別僅僅在於名稱和位置上的變化。我們不需要考慮備份片或其他問題。 映像副本只能在磁碟上產生,且不能產生增量副本。 產生映像副本必須載入或開啟資料庫。產生副本的記錄儲存在資料庫控制檔案中。所以我們可以跟蹤副本產生的時間和駐留的位置。類似與常規備份,可以建立整個資料庫,資料表空間或資料檔案的映像副本。 RMAN 複製過程提供一些和普通RMAN

Oracle 10g恢複統計資訊的限制

恢複統計資訊操作也存在一些限制,比如無法恢複使用者自訂的統計資訊。除此之外由於統計資訊是表的屬性,因此如果表被刪除,則對應的統計備份也被清除,而TRUNCATE操作則並不會影響統計備份資訊:SQL> CREATE TABLE T (ID NUMBER);Table created.SQL> INSERT INTO T SELECT ROWNUM FROM TAB;96 rows created.SQL> EXEC

Oracle中為何大量會話出現resmgr:become active等待

在一個客戶環境的資料庫上發現這個問題。當時客戶求助,資料庫狀態不正常,串連到資料庫無法正常操作,而且有時報錯ORA-12537錯誤。ORA-12537: TNS:connection closedCause: "End of file" condition has been reached; partner has disconnected.Action: None needed; this is an information

Oracle的V$SESSION_LONGOPS超過系統時間的處理方法

檢查一個系統,意外探索資料庫的v$session_longops中時間遠遠超過了系統時間。查詢結果如下:[oracle@datasd ~]$ sqlplus / as sysdbaSQL*Plus: Release10.2.0.3.0 - Production on星期一12月20 14:57:04 2010Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.Connected to:Oracle

如何讀取Oracle的BLOB欄位裡的檔案

使用ORADBI讀取儲存在BLOB欄位裡的多個檔案,並還原到指定的路徑下。下面是完整的代碼://// read_blobfile.c - 讀BLOBFILE的例子// cheungmine@gmail.com//// 記憶體流失檢測// 在需要檢測的地方放置語句://        _CrtDumpMemoryLeaks();// 以下3句的次序不能改變#define

如何用智能最佳化器提高Oracle的效能

消耗在準備新的SQL語句的時間是Oracle SQL語句執行時間的最重要的組成部分。但是通過理解Oracle 內部產生執行計畫的機制,你能夠控制Oracle花費在評估串連順序的時間數量,並且能在大體上提高查詢 效能。準備執行SQL語句當SQL語句進入Oracle的庫緩衝後,在該語句準備執行之前,將執行下列步驟:1) 語法檢查:檢查SQL語句拼字是否正確和詞序。2) 語義分析:核實所有的與資料字典不一致的表和列的名字。3) 輪廓儲存檢查:檢查資料字典,以確定該SQL語句的輪廓是否已經存在。4)

簡介EXCEL與ORACLE間的資料互傳方法

眾所周知,Microsoft Excel能很直觀而方便地進行資料輸入,統計,組建圖表,但它的資料管理能力有限,對大量的資料查詢能力不足,如果利用它資料計算方面的優點和大型資料庫ORACLE的資料查詢優點,可以設計出功能強大的資料處理系統。假設與Excel資料檔案相對應的職工情況表EMP已在ORAC LE系統中建立,此表中各欄位按照順序分別是職工代號(

Oracle中如何建立自治事務

CREATE OR REPLACE PACKAGE BODY EBS_TRADE IS-- 擷取資料庫中的錯誤資訊PROCEDURE MakeErrorMessage(Head IN EbsHeadObject, ErrorCode IN VARCHAR2,ResBuffer OUT VARCHAR2)ASPRAGMA AUTONOMOUS_TRANSACTION;       time_end

如何在Oracle中使用暫存資料表解決表衝突

本文介紹一個Oracle裡面使用暫存資料表解決表衝突的例子,並附建立暫存資料表的例子平台:windows 2000 server sp3資料庫:Oracle 9.0.1.1.1現場描述:使用者抱怨不能同時對多個單位進行資料處理,執行出現的錯誤資訊為:SQL> exec sp_hyb_da_ryxx_dwbh_test('331028')BEGIN sp_hyb_da_ryxx_dwbh_test('331028'); END;*ERROR 位於第 1 行:ORA-02055:

Oracle記憶體結構詳解(三) Oracle管理Share Pool

SGA中的共用池由庫緩衝(Library Cache)、字典緩衝(Dictionary Cache)、用於並存執行訊息的緩衝以及控制結構組成。Shared Pool的大小由參數SHARED_POOL_SIZE決定。9i中,在32位系統下,這個參數的預設值是8M,而64位系統下的預設值位64M。最大為4G。 10g 以後可以通過SGA_TARGET 參數來自動調整。對於Shared Pool的記憶體管理,是通過修正過的LRU演算法表來實現的。1、庫緩衝(Library Cache)Library

Oracle記憶體結構詳解(二) Oracle管理Buffer Cache

Buffer Cache是SGA區中專門用於存放從資料檔案中讀取的的資料區塊拷貝的地區。Oracle進程如果發現需要訪問的資料區塊已經在buffer cache中,就直接讀寫記憶體中的相應地區,而無需讀取資料檔案,從而大大提高效能(記憶體的讀取效率是磁碟讀取效率的14000倍)。Buffer cache對於所有oracle進程都是共用的,即能被所有oracle進程訪問。和Shared Pool一樣,buffer

總頁數: 1509 1 .... 270 271 272 273 274 .... 1509 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.