Multiple Perforce services under Windows
By default, the
Helix Core Server
installer for Windows installs a single
Helix Core Server
as a single service. If you want to host more than one
Helix Core Server
installation on the same machine (for instance, one for production and
one for testing), you can either manually start
Helix Core Servers from the command line, or use the
Perforce-supplied utility
svcinst.exe
, to configure additional
Perforce
services.
Setting up multiple services to increase the number of users you support without purchasing more user licenses is a violation of the terms of your Perforce End User License Agreement.
Understanding the precedence of environment variables in determining Perforce configuration is useful when configuring multiple Perforce services on the same machine. Before you begin, read and understand Configuration parameter precedence.
To set up a second Perforce service:
- Create a new directory for the Perforce service.
- Copy the server executable, service executable, and your license file into this directory.
- Create the new
Perforce
service using the
svcinst.exe
utility, as described in the example below. (Thesvcinst.exe
utility comes with the Helix Core Server installer, and can be found in your Helix Core Server root.) - Set up the environment variables and start the new service.
We recommend that you install your first
Perforce
service using the
Helix Core Server
installer. This first service is called Perforce
and its
server root directory contains files that are required by any other
Perforce
services you create on the machine.
Example Adding a second Perforce service
You want to create a second
Perforce
service with a root in C:\p4root2
and a service name of
Perforce2
. The svcinst
executable is
in the server root of the first
Helix Core Server
installation you installed in C:\perforce
.
Create a P4ROOT
directory for the new service:
C:\> mkdir c:\p4root2
Copy the server executables, both p4d.exe
(the
server) and p4s.exe
(the service), and your license
file into the new directory:
C:\> copy c:\perforce\p4d.exe c:\p4root2
C:\> copy c:\perforce\p4d.exe c:\p4root2\p4s.exe
C:\> copy c:\perforce\license c:\p4root2\license
Use
svcinst.exe
(the service installer) to create the
Perforce2
service:
C:\> svcinst create -n Perforce2 -e c:\p4root2\p4s.exe -a
After you create the Perforce2
service, set the service
parameters for the Perforce2
service:
C:\> p4 set -S Perforce2 P4ROOT=c:\p4root2 C:\> p4 set -S Perforce2 P4PORT=1667 C:\> p4 set -S Perforce2 P4LOG=log2 C:\> p4 set -S Perforce2 P4JOURNAL=journal2
Finally, use the
Perforce
service installer to start the Perforce2
service:
$ svcinst start -n Perforce2.
The second service is now running, and both services will start automatically the next time you reboot.