程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> 精煉概括Oracle性能測試

精煉概括Oracle性能測試

編輯:Oracle數據庫基礎

經過長時間學習Oracle性能測試,Oracle性能測試主要是模擬大量的sql語句操作,來對數據庫服務器進行加壓。這裡和大家分享一下,看完本文你肯定有不少收獲,希望本文能教會你更多東西。在測試前,需要准備以下要模擬的sql語句,測試腳本,並將測試控制機、測試加壓機、被測數據庫服務器准備妥當。

腳本協議選擇Oracle(2-TIEr),將所有要模擬的sql語句放在一個sql文件內,使用sql-plus來操作數據庫載入,使用 loadrunner來錄制。錄制好之後就是修改腳本了,首先在vdf.h文件中定義變量(static void FAR * OraBind1;),定義參數(static LRD_VAR_DESC UID ={LRD_VAR_DESC_EYECAT, 1, 10, LRD_DBTYPE_Oracle, {1, 1, 0},DT_SF_STRIPPED_SPACES};)。

為什麼要在這裡定義而不直接只用參數化呢?因為那樣會對加壓機造成很大的壓力,不利於測試。這裡需要根據你的腳本來變化,你在腳本中使用了多少變量,多少參數,那麼你就在要這裡定義多少。接下來修改腳本的,將一次性的登陸登出放在init和end中,使用lrd_assign和 lrd_ora8_bind_placeholder命令替代參數,如

  1. lrd_ora8_stmt(OraStm6, "SELECT COUNT(*) as counter FROM ***** WHERE ***_id="  
  2. ":U  and ( status = 0 or "  
  3. "status is null)", 1, 0, 0);  
  4. lrd_assign(&UID , "{UID}", "", 0, 0);  
  5. lrd_ora8_bind_placeholder(OraStm6, &OraBind1, "U", &UID , 0, 0, 0); 

這樣,腳本就差不多大功告成了。編譯一下,沒有問題就通過了^o^

將腳本放在控制機上,就可以開始加壓了,注意的是,被測數據庫服務器的各個參數配置要記錄下來,以便修改參數調優時能分析清晰。記錄下數據庫的iops,time,tps和響應時間,結果匯總出報告。以上介紹Oracle性能測試。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved