oracle壓力測試之orabm(一)

space6212發表於2019-06-09
近日瀏覽eygle的站點,對其中壓力測試的專題很有興趣,於是 多方參考文件後實踐了一把,過程記錄如下

資料庫壓力測試

一、用orabm測試資料庫CPU
Orabm透過在使用者指定的併發下執行指定數量的事務來測試系統效能.它主要測試資料庫伺服器的CPU效能和記憶體。
orabm實際上是一堆sql的集合。
orabm可以用在linux/windows/solaris下使用。
orabm不一定需要執行在資料庫所在伺服器上,它可以執行在任何安裝了9i客戶端的終端上。你可以用客戶端連線到遠端資料庫來測試遠端資料庫的效能狀況。

因為orabm主要測試的是CPU和記憶體,所以應該儘量避免其他因素影響測試,故使用orabm時,為了更好的測試CPU和記憶體的效能,最好把db_cache_size設成大於200M,這樣,所有的資料都可以放在記憶體中,不會因為物理I/O而使得測試不準確。使用orabm的一個步驟就是把所有的表和索引都放到data buffer中。

1、下載軟體
orabm是測試CPU得

2、安裝
安裝主要分7個步驟,分別對應6個sql指令碼和一個匯入資料的小工具。如下所有指令碼除第一個必須用擁有dba許可權的使用者執行外,其他的都可以用新建orabm使用者執行。為了避免麻煩,最好都用system或者sys執行

1) create the ORABM user (assumes TOOLS tablespace, TEMP temporary tablespace)
第一步是建立orabm使用者,並作相應授權。注意,預設情況下,orabm使用者的預設表空間是tools,臨時表空間是temp。匯入一個Warehouses的資料量大概是100M,所以,你應該保證tools表空間大於150m,或者新建一個表空間,然後修改orabm_user.sql裡的相關資訊。
sqlplus system/pwd @orabm_user
遠端資料庫使用:
sqlplus
@orabm_user

2) create the tables
這一步主要建立orabm測試需要的表。
sqlplus system/pwd @orabm_tab
遠端資料庫使用:
sqlplus
@orabm_tag

3) Load the data
匯入測試所需的資料(orabmload在OS的對應版本的bin目錄下)
$ orabmload Warehouses 1
遠端資料庫使用:
如果要測試的是遠端資料庫的話,
windows需要先set local=tnsname,tnsname是在tnsname.ora中配置的遠端資料庫的別名。
UNIX/LIINUX,需要先TWO_TASK=tnsname
$ orabmload Warehouses 1

4) create the indexes
這一步建立索引
sqlplus system/pwd @orabm_ind
遠端資料庫使用:
sqlplus
@orabm_ind

5) analyze the tables and indexes
分析表和索引
sqlplus system/pwd @orabm_analyze
遠端資料庫使用:
sqlplus
@orabm_analyze

6) create the stress-test PL/SQL procedures
建立壓力測試所需的儲存過程
sqlplus system/pwd @orabm_serverside_stress
遠端資料庫使用:
sqlplus
@orabm_serverside_stress

7) cache the table and index data in the SGA
把表和索引都放到SGA中,原因在上文已經介紹了。
sqlplus system/pwd @orabm_cache
遠端資料庫使用:
sqlplus
@orabm_cache

執行完這7個步驟,orabm的測試環境就算配置完成了。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/231499/viewspace-63729/,如需轉載,請註明出處,否則將追究法律責任。

相關文章