Swingbench is a free load generator (and benchmarks) designed by Dominic Giles to stress test an Oracle database (10g,11g,12c).
In this example, we will use charbench which is the command line interface to Swingbench.
1. Download Swingbench.
No Format |
---|
su - oracle |
No Format |
---|
mkdir software |
No Format |
---|
cd software |
No Format |
---|
wget http://dominicgiles.com/swingbench/ |
...
swingbench25932.zip |
Note | ||
---|---|---|
If there is no Internet connection and the Swingbench software has been downloaded to the host (laptop), then the following command can be used to copy the software from the host machine to the first VM (dbv01):
This uses port forwarding which was setup when Virtual Box was configured (02 - Set up NAT network in Virtual Box). 192.168.1.197 is the IP address of the host machine (laptop). Use ifconfig or ipconfig to identify what the local IP address is of your host machine. |
2. Unzip the software.
No Format |
---|
unzip swingbench25932.zip
Archive: swingbench25932.zip
creating: swingbench/
inflating: swingbench/.DS_Store
creating: swingbench/bin/
inflating: swingbench/bin/bmcompare
inflating: swingbench/bin/ccconfig.xml
inflating: swingbench/bin/ccwizard
inflating: swingbench/bin/ccwizard.xml
inflating: swingbench/bin/charbench
inflating: swingbench/bin/clusteroverview
inflating: swingbench/bin/clusteroverview.xml
inflating: swingbench/bin/coordinator
creating: swingbench/bin/data/
inflating: swingbench/bin/data/1000mostpopularadjectives.txt
inflating: swingbench/bin/data/1000mostpopularwords.txt
inflating: swingbench/bin/data/100mostpopularwords.txt
inflating: swingbench/bin/data/catalogue.txt
inflating: swingbench/bin/data/counties.txt
inflating: swingbench/bin/data/countries.txt
extracting: swingbench/bin/data/domains.txt
inflating: swingbench/bin/data/emails.txt
inflating: swingbench/bin/data/lowerfirstnames.txt
inflating: swingbench/bin/data/lowerlastnames.txt
inflating: swingbench/bin/data/names.txt
inflating: swingbench/bin/data/nls.txt
inflating: swingbench/bin/data/productids.txt
inflating: swingbench/bin/data/titles.txt
inflating: swingbench/bin/data/towns.txt
inflating: swingbench/bin/minibench
inflating: swingbench/bin/oewizard
inflating: swingbench/bin/oewizard.xml
inflating: swingbench/bin/shwizard
inflating: swingbench/bin/shwizard.xml
inflating: swingbench/bin/swingbench
inflating: swingbench/bin/swingconfig.xml
creating: swingbench/configs/
inflating: swingbench/configs/ccconfig.xml
inflating: swingbench/configs/oeconfig.xml
inflating: swingbench/configs/shconfig.xml
inflating: swingbench/configs/spconfig.xml
inflating: swingbench/configs/stresstest.xml
inflating: swingbench/configs/swingconfigv1.xml
inflating: swingbench/configs/swingconfigv2.xml
creating: swingbench/launcher/
inflating: swingbench/launcher/commons-launcher.jar
inflating: swingbench/launcher/launcher.properties
inflating: swingbench/launcher/launcher.xml
inflating: swingbench/launcher/LauncherBootstrap.class
creating: swingbench/lib/
creating: swingbench/lib/launcher/
inflating: swingbench/lib/launcher/ant-launcher.jar
inflating: swingbench/lib/launcher/ant.jar
inflating: swingbench/lib/launcher/xercesImpl.jar
inflating: swingbench/lib/launcher/xml-apis.jar
inflating: swingbench/lib/ojdbc6.jar
inflating: swingbench/lib/ons.jar
inflating: swingbench/lib/simplefan.jar
inflating: swingbench/lib/swingbench.jar
inflating: swingbench/lib/ucp.jar
creating: swingbench/log/
inflating: swingbench/README.txt
creating: swingbench/source/
inflating: swingbench/source/antbuild
inflating: swingbench/source/build.xml
creating: swingbench/source/com/
creating: swingbench/source/com/dom/
creating: swingbench/source/com/dom/benchmarking/
creating: swingbench/source/com/dom/benchmarking/swingbench/
creating: swingbench/source/com/dom/benchmarking/swingbench/dsstransactions/
inflating: swingbench/source/com/dom/benchmarking/swingbench/dsstransactions/PeriodToPeriodComparison.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/dsstransactions/ProductSalesRollupCube.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/dsstransactions/SalesByCountryForGivenYear.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/dsstransactions/SalesByQuarterCountry.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/dsstransactions/SalesCubeByMonth.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/dsstransactions/SalesHistory.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/dsstransactions/SalesMovingAverage.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/dsstransactions/SalesRollupByMonth.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/dsstransactions/SimpleLookUp.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/dsstransactions/TopSalesWithinQuarter.java
creating: swingbench/source/com/dom/benchmarking/swingbench/plsqltransactions/
inflating: swingbench/source/com/dom/benchmarking/swingbench/plsqltransactions/BrowseAndUpdateOrders.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/plsqltransactions/BrowseProducts.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/plsqltransactions/NewCustomerProcess.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/plsqltransactions/NewCustomerProcessV2.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/plsqltransactions/NewOrderProcess.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/plsqltransactions/OrderEntryProcess.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/plsqltransactions/ProcessOrders.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/plsqltransactions/SalesRepsOrdersQuery.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/plsqltransactions/UpdateCustomerDetailsV2.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/plsqltransactions/WarehouseActivityQuery.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/plsqltransactions/WarehouseOrdersQuery.java
creating: swingbench/source/com/dom/benchmarking/swingbench/storedprocedures/
inflating: swingbench/source/com/dom/benchmarking/swingbench/storedprocedures/newStoredProcedure.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/storedprocedures/StoredProcedure1.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/storedprocedures/StoredProcedure2.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/storedprocedures/StoredProcedure3.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/storedprocedures/StoredProcedure4.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/storedprocedures/StoredProcedure5.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/storedprocedures/StoredProcedure6.java
creating: swingbench/source/com/dom/benchmarking/swingbench/stresstest/
inflating: swingbench/source/com/dom/benchmarking/swingbench/stresstest/StressTest.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/stresstest/StressTestDelete.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/stresstest/StressTestInsert.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/stresstest/StressTestSelect.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/stresstest/StressTestUpdate.java
creating: swingbench/source/com/dom/benchmarking/swingbench/transactions/
inflating: swingbench/source/com/dom/benchmarking/swingbench/transactions/BrowseAndUpdateOrders.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/transactions/BrowseProducts.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/transactions/NewCustomerProcess.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/transactions/NewOrderProcess.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/transactions/OrderEntryProcess.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/transactions/ProcessOrders.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/transactions/SalesRepsOrdersQuery.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/transactions/WarehouseActivityQuery.java
inflating: swingbench/source/com/dom/benchmarking/swingbench/transactions/WarehouseOrdersQuery.java
creating: swingbench/source/com/mike/
creating: swingbench/source/com/mike/CallingCircle/
inflating: swingbench/source/com/mike/CallingCircle/CallingCircleLineIdentifier.java
inflating: swingbench/source/com/mike/CallingCircle/CallingCircleProcess.java
inflating: swingbench/source/com/mike/CallingCircle/CallingLineIdentifier.java
inflating: swingbench/source/com/mike/CallingCircle/CustomerAccount.java
inflating: swingbench/source/com/mike/CallingCircle/CustomerCallingLineIdentifier.java
inflating: swingbench/source/com/mike/CallingCircle/NewCallingCircleProcess.java
inflating: swingbench/source/com/mike/CallingCircle/RetrieveHistoryProcess.java
inflating: swingbench/source/com/mike/CallingCircle/UpdateCallingCircleProcess.java
creating: swingbench/sql/
inflating: swingbench/sql/analyzecc.sql
inflating: swingbench/sql/CreAppPkgBdy.sql
inflating: swingbench/sql/CreAppPkgHdr.sql
inflating: swingbench/sql/CreAppPrc.sql
inflating: swingbench/sql/CreData1.sql
inflating: swingbench/sql/CreData2.sql
inflating: swingbench/sql/CreData3.sql
inflating: swingbench/sql/CreDataPkgBdy.sql
inflating: swingbench/sql/CreDataPkgHdr.sql
inflating: swingbench/sql/CreInds.sql
extracting: swingbench/sql/CreInds2.sql
inflating: swingbench/sql/CreMiscPkgBdy.sql
inflating: swingbench/sql/CreMiscPkgHdr.sql
inflating: swingbench/sql/CreTabs.sql
inflating: swingbench/sql/CreTspc.sql
inflating: swingbench/sql/CreUser.sql
inflating: swingbench/sql/DropTabs.sql
inflating: swingbench/sql/DropUser.sql
inflating: swingbench/sql/GenData.sql
inflating: swingbench/sql/grantv$access.sql
inflating: swingbench/sql/oepostinstall.sql
inflating: swingbench/sql/sh.xml
inflating: swingbench/sql/sh_dgcreateconstraints_with_indexes.sql
inflating: swingbench/sql/shdg_analyzeschema.sql
inflating: swingbench/sql/shdg_analyzeschema2.sql
inflating: swingbench/sql/shdg_createconstraints.sql
inflating: swingbench/sql/shdg_createloadviews.sql
inflating: swingbench/sql/shdg_createtablespace.sql
inflating: swingbench/sql/shdg_createuser.sql
inflating: swingbench/sql/shdg_drop.sql
inflating: swingbench/sql/shdg_drop_load_views.sql
inflating: swingbench/sql/shdg_drop_range.sql
inflating: swingbench/sql/shdg_droptablespace.sql
inflating: swingbench/sql/shdg_dropuser.sql
inflating: swingbench/sql/shdg_indexes.sql
inflating: swingbench/sql/shdg_indexes_none.sql
inflating: swingbench/sql/shdg_indexes_part.sql
inflating: swingbench/sql/shdg_indexes_part_pk.sql
inflating: swingbench/sql/shdg_indexes_pk.sql
inflating: swingbench/sql/shdg_localindexes.sql
inflating: swingbench/sql/shdg_mergepartitions.sql
inflating: swingbench/sql/shdg_modify_indexes.sql
inflating: swingbench/sql/shdg_tables.sql
inflating: swingbench/sql/shdg_tablesrange.sql
inflating: swingbench/sql/shdg_tidyup.sql
inflating: swingbench/sql/shdg_timedimension.sql
inflating: swingbench/sql/soe.xml
inflating: swingbench/sql/soe2.xml
inflating: swingbench/sql/soedg_modify_indexes.sql
inflating: swingbench/sql/soedganalyzeschema.sql
inflating: swingbench/sql/soedganalyzeschema2.sql
inflating: swingbench/sql/soedgconstraints.sql
inflating: swingbench/sql/soedgconstraints2.sql
extracting: swingbench/sql/soedgconstraints_none_2.sql
inflating: swingbench/sql/soedgconstraints_pk_2.sql
inflating: swingbench/sql/soedgcreatepartitionedtables.sql
inflating: swingbench/sql/soedgcreatetables.sql
inflating: swingbench/sql/soedgcreatetables2.sql
inflating: swingbench/sql/soedgcreatetablescomposite2.sql
inflating: swingbench/sql/soedgcreatetableshash2.sql
inflating: swingbench/sql/soedgcreatetablespace.sql
inflating: swingbench/sql/soedgcreateuser.sql
inflating: swingbench/sql/soedgdrop.sql
inflating: swingbench/sql/soedgdrop2.sql
inflating: swingbench/sql/soedgindexes.sql
inflating: swingbench/sql/soedgindexes2.sql
inflating: swingbench/sql/soedgindexes_none_2.sql
inflating: swingbench/sql/soedgindexes_pk_2.sql
inflating: swingbench/sql/soedgpackage.sql
inflating: swingbench/sql/soedgpackage2_body.sql
inflating: swingbench/sql/soedgpackage2_header.sql
inflating: swingbench/sql/soedgsequences.sql
inflating: swingbench/sql/soedgsequences2.sql
inflating: swingbench/sql/soedgsetupmetadata.sql
inflating: swingbench/sql/soedgsqlset.sql
inflating: swingbench/sql/soedgviews.sql
inflating: swingbench/sql/soedroptablespace.sql
inflating: swingbench/sql/soedropuser.sql
inflating: swingbench/sql/storedprocedures.sql
inflating: swingbench/swingbenchFAQ.pdf
creating: swingbench/winbin/
inflating: swingbench/winbin/bmcompare.bat
inflating: swingbench/winbin/ccwizard.bat
inflating: swingbench/winbin/ccwizard.xml
inflating: swingbench/winbin/charbench.bat
inflating: swingbench/winbin/clusteroverview.bat
inflating: swingbench/winbin/clusteroverview.xml
inflating: swingbench/winbin/coordinator.bat
creating: swingbench/winbin/data/
inflating: swingbench/winbin/data/1000mostpopularadjectives.txt
inflating: swingbench/winbin/data/1000mostpopularwords.txt
inflating: swingbench/winbin/data/100mostpopularwords.txt
inflating: swingbench/winbin/data/catalogue.txt
inflating: swingbench/winbin/data/counties.txt
inflating: swingbench/winbin/data/countries.txt
extracting: swingbench/winbin/data/domains.txt
inflating: swingbench/winbin/data/emails.txt
inflating: swingbench/winbin/data/lowerfirstnames.txt
inflating: swingbench/winbin/data/lowerlastnames.txt
inflating: swingbench/winbin/data/names.txt
inflating: swingbench/winbin/data/nls.txt
inflating: swingbench/winbin/data/productids.txt
inflating: swingbench/winbin/data/titles.txt
inflating: swingbench/winbin/data/towns.txt
inflating: swingbench/winbin/minibench.bat
inflating: swingbench/winbin/oewizard.bat
inflating: swingbench/winbin/oewizard.xml
inflating: swingbench/winbin/shwizard.bat
inflating: swingbench/winbin/shwizard.xml
inflating: swingbench/winbin/swingbench.bat
inflating: swingbench/winbin/swingconfig.xml |
3. Move the Swingbench directory to the right location.
No Format |
---|
mv swingbench ../ |
4. Swingbench should now be in the home directory of oracle.