| Question: How do I start multiple copies of Foxhound on a single computer? 
Answer: You can use the Extended Edition of Foxhound to start up to 10 different copies of the Foxhound database
on one computer, each running as a separate server and monitoring a separate set of target databases.
 
Here's how to set it up:
 
   
   Make sure your original copy of the Foxhound database is activated as an Extended Edition copy. 
   
   
   Stop and/or delete any Foxhound Monitor sampling sessions you don't want to run on all copies of Foxhound. 
      
      Your original copy of the Foxhound database is going to serve as a model or template for the other nine copies.
      In other words, when the nine new copies are first started they will contain exactly the same settings as the original copy,
      and you can only customize each copy after it is started.
      
   Shut down your original copy of the Foxhound database. 
   
   
   Make 9 file copies (see example 1 below) of your original foxhound2.db file in nine different folders. 
      
By default, Foxhound is installed in this location on Windows XP:
   
   C:\Documents and Settings\All Users\Application Data\RisingRoad\Foxhound2
   and on Vista and Windows 7 it is here: 
   C:\ProgramData\RisingRoad\Foxhound2
   
   Use dbsrv12.exe (see example 2 below) to start your original Foxhound database plus the nine copies as follows:
   
       
         
         use different runtime server names: foxhound2, foxhound2b, foxhound2c, ..., foxhound2j 
         
         
         use different HTTP ports; e.g., 49301, ... 49310
         
         
         choose cache memory options carefully; e.g., -c 5p -ch 10p
         
          
   
   Start 10 browser sessions (see example 3 below) using the different HTTP ports. 
   
   
   Use Monitor Options - 2. Manage Multiple Monitor Sessions in each browser session to set up the target databases for each copy of Foxhound. 
   
   
   See example 4 below for a script to stop all 10 copies of Foxhound.
    
Here is a sample Windows command file that makes the 9 copies in nine different folders and then starts all 10 copies of Foxhound:
 
Example 1: Make 9 Copies Of Foxhound   [Top]
 
REM ******************************************************************
ECHO Making nine Foxhound database copies...
CD /D "%FOXHOUND2%"
MD b
MD c
MD d
MD e
MD f
MD g
MD h
MD i
MD j
COPY /V /Y foxhound2.db b
COPY /V /Y rroad2.dll   b
COPY /V /Y rroad264.dll b
COPY /V /Y foxhound2.db c
COPY /V /Y rroad2.dll   c
COPY /V /Y rroad264.dll c
COPY /V /Y foxhound2.db d
COPY /V /Y rroad2.dll   d
COPY /V /Y rroad264.dll d
COPY /V /Y foxhound2.db e
COPY /V /Y rroad2.dll   e
COPY /V /Y rroad264.dll e
COPY /V /Y foxhound2.db f
COPY /V /Y rroad2.dll   f
COPY /V /Y rroad264.dll f
COPY /V /Y foxhound2.db g
COPY /V /Y rroad2.dll   g
COPY /V /Y rroad264.dll g
COPY /V /Y foxhound2.db h
COPY /V /Y rroad2.dll   h
COPY /V /Y rroad264.dll h
COPY /V /Y foxhound2.db i
COPY /V /Y rroad2.dll   i
COPY /V /Y rroad264.dll i
COPY /V /Y foxhound2.db j
COPY /V /Y rroad2.dll   j
COPY /V /Y rroad264.dll j
PAUSE
 
Example 2: Start 10 Copies Of Foxhound   [Top]
 
REM ******************************************************************
ECHO Starting ten Foxhound engines...
SET BIN=Bin32
IF EXIST "%SQLANY12%\Bin64\dbsrv12.exe" (SET BIN=Bin64)
IF "%FOXHOUND2BIN%"=="Bin32" (SET BIN=Bin32)
CD /D "%FOXHOUND2%"
REM Maintenance Note: This script does not use the
REM    same set of dbsrv12 options as the other
REM    scripts that launch Foxhound...
REM       $backup_foxhound2.bat
REM       $start_foxhound2_engine.bat
REM       $start_foxhound2_chrome.bat
REM       $start_foxhound2_chrome_debug.bat
REM       $start_foxhound2_firefox.bat
REM       $start_foxhound2_firefox_debug.bat
REM       $start_foxhound2_ie.bat
REM       $start_foxhound2_ie_debug.bat
IF EXIST "%FOXHOUND2%\foxhound2_debug_startup.txt" DEL /F /Q "%FOXHOUND2%\foxhound2_debug_startup.txt"
"%SQLANY12%\%BIN%\dbspawn.exe" -f "%SQLANY12%\%BIN%\dbsrv12.exe" -c 5p -ch 10p -cr- -gk all -gn 120 -gna 0^
  -n foxhound2 -o foxhound2_debug.txt -oe foxhound2_debug_startup.txt^
  -o 1M -sb 0 -x tcpip(port=49201) -xd -xs http(port=49301;maxsize=0;to=600;kto=600) foxhound2.db -n f
IF ERRORLEVEL 1 GOTO dbsrv12_failure
IF EXIST "%FOXHOUND2%\b\foxhound2_debug_startup.txt" DEL /F /Q "%FOXHOUND2%\b\foxhound2_debug_startup.txt"
"%SQLANY12%\%BIN%\dbspawn.exe" -f "%SQLANY12%\%BIN%\dbsrv12.exe" -c 5p -ch 10p -cr- -gk all -gn 120 -gna 0^
  -n foxhound2b -o b\foxhound2_debug.txt -oe b\foxhound2_debug_startup.txt^
  -o 1M -sb 0 -x tcpip(port=49202) -xd -xs http(port=49302;maxsize=0;to=600;kto=600) b\foxhound2.db -n f
IF ERRORLEVEL 1 GOTO dbsrv12_failure
IF EXIST "%FOXHOUND2%\c\foxhound2_debug_startup.txt" DEL /F /Q "%FOXHOUND2%\c\foxhound2_debug_startup.txt"
"%SQLANY12%\%BIN%\dbspawn.exe" -f "%SQLANY12%\%BIN%\dbsrv12.exe" -c 5p -ch 10p -cr- -gk all -gn 120 -gna 0^
  -n foxhound2c -o c\foxhound2_debug.txt -oe c\foxhound2_debug_startup.txt^
  -o 1M -sb 0 -x tcpip(port=49203) -xd -xs http(port=49303;maxsize=0;to=600;kto=600) c\foxhound2.db -n f
IF ERRORLEVEL 1 GOTO dbsrv12_failure
IF EXIST "%FOXHOUND2%\d\foxhound2_debug_startup.txt" DEL /F /Q "%FOXHOUND2%\d\foxhound2_debug_startup.txt"
"%SQLANY12%\%BIN%\dbspawn.exe" -f "%SQLANY12%\%BIN%\dbsrv12.exe" -c 5p -ch 10p -cr- -gk all -gn 120 -gna 0^
  -n foxhound2d -o d\foxhound2_debug.txt -oe d\foxhound2_debug_startup.txt^
  -o 1M -sb 0 -x tcpip(port=49204) -xd -xs http(port=49304;maxsize=0;to=600;kto=600) d\foxhound2.db -n f
IF ERRORLEVEL 1 GOTO dbsrv12_failure
IF EXIST "%FOXHOUND2%\e\foxhound2_debug_startup.txt" DEL /F /Q "%FOXHOUND2%\e\foxhound2_debug_startup.txt"
"%SQLANY12%\%BIN%\dbspawn.exe" -f "%SQLANY12%\%BIN%\dbsrv12.exe" -c 5p -ch 10p -cr- -gk all -gn 120 -gna 0^
  -n foxhound2e -o e\foxhound2_debug.txt -oe e\foxhound2_debug_startup.txt^
  -o 1M -sb 0 -x tcpip(port=49205) -xd -xs http(port=49305;maxsize=0;to=600;kto=600) e\foxhound2.db -n f
IF ERRORLEVEL 1 GOTO dbsrv12_failure
IF EXIST "%FOXHOUND2%\f\foxhound2_debug_startup.txt" DEL /F /Q "%FOXHOUND2%\f\foxhound2_debug_startup.txt"
"%SQLANY12%\%BIN%\dbspawn.exe" -f "%SQLANY12%\%BIN%\dbsrv12.exe" -c 5p -ch 10p -cr- -gk all -gn 120 -gna 0^
  -n foxhound2f -o f\foxhound2_debug.txt -oe f\foxhound2_debug_startup.txt^
  -o 1M -sb 0 -x tcpip(port=49206) -xd -xs http(port=49306;maxsize=0;to=600;kto=600) f\foxhound2.db -n f
IF ERRORLEVEL 1 GOTO dbsrv12_failure
IF EXIST "%FOXHOUND2%\g\foxhound2_debug_startup.txt" DEL /F /Q "%FOXHOUND2%\g\foxhound2_debug_startup.txt"
"%SQLANY12%\%BIN%\dbspawn.exe" -f "%SQLANY12%\%BIN%\dbsrv12.exe" -c 5p -ch 10p -cr- -gk all -gn 120 -gna 0^
  -n foxhound2g -o g\foxhound2_debug.txt -oe g\foxhound2_debug_startup.txt^
  -o 1M -sb 0 -x tcpip(port=49207) -xd -xs http(port=49307;maxsize=0;to=600;kto=600) g\foxhound2.db -n f
IF ERRORLEVEL 1 GOTO dbsrv12_failure
IF EXIST "%FOXHOUND2%\h\foxhound2_debug_startup.txt" DEL /F /Q "%FOXHOUND2%\h\foxhound2_debug_startup.txt"
"%SQLANY12%\%BIN%\dbspawn.exe" -f "%SQLANY12%\%BIN%\dbsrv12.exe" -c 5p -ch 10p -cr- -gk all -gn 120 -gna 0^
  -n foxhound2h -o h\foxhound2_debug.txt -oe h\foxhound2_debug_startup.txt^
  -o 1M -sb 0 -x tcpip(port=49208) -xd -xs http(port=49308;maxsize=0;to=600;kto=600) h\foxhound2.db -n f
IF ERRORLEVEL 1 GOTO dbsrv12_failure
IF EXIST "%FOXHOUND2%\i\foxhound2_debug_startup.txt" DEL /F /Q "%FOXHOUND2%\i\foxhound2_debug_startup.txt"
"%SQLANY12%\%BIN%\dbspawn.exe" -f "%SQLANY12%\%BIN%\dbsrv12.exe" -c 5p -ch 10p -cr- -gk all -gn 120 -gna 0^
  -n foxhound2i -o i\foxhound2_debug.txt -oe i\foxhound2_debug_startup.txt^
  -o 1M -sb 0 -x tcpip(port=49209) -xd -xs http(port=49309;maxsize=0;to=600;kto=600) i\foxhound2.db -n f
IF ERRORLEVEL 1 GOTO dbsrv12_failure
IF EXIST "%FOXHOUND2%\j\foxhound2_debug_startup.txt" DEL /F /Q "%FOXHOUND2%\j\foxhound2_debug_startup.txt"
"%SQLANY12%\%BIN%\dbspawn.exe" -f "%SQLANY12%\%BIN%\dbsrv12.exe" -c 5p -ch 10p -cr- -gk all -gn 120 -gna 0^
  -n foxhound2j -o j\foxhound2_debug.txt -oe j\foxhound2_debug_startup.txt^
  -o 1M -sb 0 -x tcpip(port=49210) -xd -xs http(port=49310;maxsize=0;to=600;kto=600) j\foxhound2.db -n f
IF ERRORLEVEL 1 ( GOTO dbsrv12_failure ) ELSE ( GOTO dbsrv12_success )
:dbsrv12_failure
ECHO ******************************************************************
ECHO *** ERROR ********************************************************
ECHO *** dbspawn/dbsrv12 set ERRORLEVEL = %ERRORLEVEL%
ECHO *** To display startup diagnostics,
PAUSE
IF NOT EXIST "%FOXHOUND2%\foxhound2_debug_startup.txt" ( GOTO file_does_not_exist ) ELSE ( GOTO file_exists ) 
:file_does_not_exist
REM ******************************************************************
ECHO *** No startup diagnostics are available.
PAUSE
GOTO end
:file_exists
REM ******************************************************************
TYPE "%FOXHOUND2%\foxhound2_debug_startup.txt"
PAUSE
GOTO end
:dbsrv12_success
REM ******************************************************************
IF NOT EXIST "%FOXHOUND2%\foxhound2_debug_startup.txt" ( GOTO end ) ELSE ( GOTO display_file ) 
:display_file
ECHO ******************************************************************
ECHO *** ERROR ********************************************************
ECHO *** To display startup diagnostics,
PAUSE
TYPE "%FOXHOUND2%\foxhound2_debug_startup.txt"
GOTO end
:end
REM ******************************************************************
ECHO All done...
PAUSE
EXIT
 
Example 3: Start 10 Foxhound Browser Sessions   [Top]
 
REM ******************************************************************
ECHO Starting ten Chrome browser sessions...
IF EXIST "%UserProfile%\AppData\Local\Google\Chrome\Application\chrome.exe" ( GOTO use_AppData ) ELSE ( GOTO use_LocalSettings )
 
:use_AppData
START "f01" "%UserProfile%\AppData\Local\Google\Chrome\Application\chrome.exe" http://localhost:49301/foxhound
START "f02" "%UserProfile%\AppData\Local\Google\Chrome\Application\chrome.exe" http://localhost:49302/foxhound
START "f03" "%UserProfile%\AppData\Local\Google\Chrome\Application\chrome.exe" http://localhost:49303/foxhound
START "f04" "%UserProfile%\AppData\Local\Google\Chrome\Application\chrome.exe" http://localhost:49304/foxhound
START "f05" "%UserProfile%\AppData\Local\Google\Chrome\Application\chrome.exe" http://localhost:49305/foxhound
START "f06" "%UserProfile%\AppData\Local\Google\Chrome\Application\chrome.exe" http://localhost:49306/foxhound
START "f07" "%UserProfile%\AppData\Local\Google\Chrome\Application\chrome.exe" http://localhost:49307/foxhound
START "f08" "%UserProfile%\AppData\Local\Google\Chrome\Application\chrome.exe" http://localhost:49308/foxhound
START "f09" "%UserProfile%\AppData\Local\Google\Chrome\Application\chrome.exe" http://localhost:49309/foxhound
START "f10" "%UserProfile%\AppData\Local\Google\Chrome\Application\chrome.exe" http://localhost:49310/foxhound
GOTO end
:use_LocalSettings
START "f01" "%UserProfile%\Local Settings\Application Data\Google\Chrome\Application\chrome.exe" http://localhost:49301/foxhound
START "f02" "%UserProfile%\Local Settings\Application Data\Google\Chrome\Application\chrome.exe" http://localhost:49302/foxhound
START "f03" "%UserProfile%\Local Settings\Application Data\Google\Chrome\Application\chrome.exe" http://localhost:49303/foxhound
START "f04" "%UserProfile%\Local Settings\Application Data\Google\Chrome\Application\chrome.exe" http://localhost:49304/foxhound
START "f05" "%UserProfile%\Local Settings\Application Data\Google\Chrome\Application\chrome.exe" http://localhost:49305/foxhound
START "f06" "%UserProfile%\Local Settings\Application Data\Google\Chrome\Application\chrome.exe" http://localhost:49306/foxhound
START "f07" "%UserProfile%\Local Settings\Application Data\Google\Chrome\Application\chrome.exe" http://localhost:49307/foxhound
START "f08" "%UserProfile%\Local Settings\Application Data\Google\Chrome\Application\chrome.exe" http://localhost:49308/foxhound
START "f09" "%UserProfile%\Local Settings\Application Data\Google\Chrome\Application\chrome.exe" http://localhost:49309/foxhound
START "f10" "%UserProfile%\Local Settings\Application Data\Google\Chrome\Application\chrome.exe" http://localhost:49310/foxhound
:end
PAUSE
 
Example 4: Stop 10 Copies Of Foxhound   [Top]
 
REM ******************************************************************
ECHO Stopping ten Foxhound engines...
SET BIN=Bin32
IF EXIST "%SQLANY12%\Bin64\dbsrv12.exe" (SET BIN=Bin64)
IF "%FOXHOUND2BIN%"=="Bin32" (SET BIN=Bin32)
"%SQLANY12%\%BIN%\dbstop.exe" -c "ENG=foxhound2;UID=STOPPER;PWD=SQL" -y
"%SQLANY12%\%BIN%\dbstop.exe" -c "ENG=foxhound2b;UID=STOPPER;PWD=SQL" -y
"%SQLANY12%\%BIN%\dbstop.exe" -c "ENG=foxhound2c;UID=STOPPER;PWD=SQL" -y
"%SQLANY12%\%BIN%\dbstop.exe" -c "ENG=foxhound2d;UID=STOPPER;PWD=SQL" -y
"%SQLANY12%\%BIN%\dbstop.exe" -c "ENG=foxhound2e;UID=STOPPER;PWD=SQL" -y
"%SQLANY12%\%BIN%\dbstop.exe" -c "ENG=foxhound2f;UID=STOPPER;PWD=SQL" -y
"%SQLANY12%\%BIN%\dbstop.exe" -c "ENG=foxhound2g;UID=STOPPER;PWD=SQL" -y
"%SQLANY12%\%BIN%\dbstop.exe" -c "ENG=foxhound2h;UID=STOPPER;PWD=SQL" -y
"%SQLANY12%\%BIN%\dbstop.exe" -c "ENG=foxhound2i;UID=STOPPER;PWD=SQL" -y
"%SQLANY12%\%BIN%\dbstop.exe" -c "ENG=foxhound2j;UID=STOPPER;PWD=SQL" -y
PAUSE
 
See also...
How do I start Foxhound?
 How do I tell Foxhound to use an HTTP port other than 80?
 
 |