Performing a Silent Installation (Windows)
To perform a silent installation of FME Server, extract and run an installer from a Windows command line, and override any default installation properties to customize the installation.
To obtain the installer, see Obtain the Installer.
Extracting Installation Files

Installation files, which consist of a .msi file and .cab files, must be extracted before proceeding with installation. You can extract installation files in either of the following ways:
- Manual extraction. Following extraction, invoke the .msi file to perform a silent install.
- Invoke the installation .exe directly, and use the following parameters to control extraction and installation:
Flag | Description |
---|---|
-d<path> | Set the destination folder for unpacked files. |
-s, -s1, -s2 | Silent mode. Switch -s is a brief form of -s1. Both -s and -s1 hide the main dialog and extraction progress. -s2 hides the start dialog, but extraction progress is displayed. |
-sp<par> | Installer Flags to pass to the extracted .msi installer when it is run. |
Installer Flags

The following .msi-specific flags can be passed to the installer:
Flag | Description |
---|---|
/q[n|b] | Signifies a quiet installation. /qn means quiet with no user interface, and /qb means a quiet installation with a basic progress bar. |
/norestart | Do not restart the computer after installation. |
/l*v <logfile> | Enable logging to the <logfile> specified. |
Specifying FME Server Components to Install

To select which components of FME Server to install, use the ADDLOCAL property, and specify components in a comma-delimited list. If this property is not specified, all components are installed.
Feature | Value |
---|---|
FME Server Core | FMEServerCore |
Web Services | Services |
FME Server Console | ServerConsole |
FME Engine | FMEEngine |
FME Server Database (on PostgreSQL) | FMEServerDatabase |
Example
To install the FME Server Core and FME Engine services:
ADDLOCAL=FMEServerCore,FMEEngine
Installation Properties

The following table lists the installation properties that you can set in advance, and their default values if left unset. These properties correspond to properties that can be adjusted in the user dialogs of a standard installation.
Property | Default Value | Description |
---|---|---|
FMESERVERHOSTNAME | The Computer Name on which the installer is running | Host name for this installation of FME Server. |
INSTALLDIR | C:\Program Files\FMEServer or C:\apps\FMEServer |
The FME Server install directory. If you change this value the path must end in "\". For example, INSTALLDIR=C:\apps\FMEServer\ |
INSTALLDISTRIBUTEDREPOSITORY | No | Whether the FME Server System Share is stored on a separate server and not on the machine hosting the FME Server Core. Allowed values are Yes and No. |
FMESERVERUSER | local system account |
the Windows user account that will run the FME Server System Services. This account must have:
|
FMESERVERUSERPASSWORD | If FMESERVERUSER is specified, the user account password. | |
FMESERVERSHAREDDATA | [INSTALLDIR] | If INSTALLDRISTRIBUTEDREPOSITORY is No, the path to the FME Server System Share directory. Specify this property only if performing an Express installation. Path names are case-sensitive. |
ROOTDIR | [INSTALLDIR] | The path to the FME Server System Share. Specify this property only in a distributed installation on a machine that is not hosting the FME Server Core. |
REPOSITORYSERVERROOTDIR | [INSTALLDIR] | The path to the FME Server System Share. Specify this property only in a distributed installation on a machine that is hosting the FME Server Core. |
DATABASETYPE | Default | The type of database that will be used in the FME Server installation. Possible values are Default, MSSQL, Oracle, PostGreSQL. Default assumes the PostgreSQL database that is included with the FME Server installer and located on the same machine. |
DATABASEHOST | [FMESERVERHOSTNAME] | The host that the database is on. Specify only if DATABASETYPE is not Default. |
DATABASEPORT |
MSSQL: 1433 PostGreSQL: 5432 Oracle: 1521 |
The port to connect to the database. Specify only if DATABASETYPE is not Default. |
ORACLESID | The SID for the Oracle database. Must be specified only if DATABASETYPE is Oracle. | |
JDBCDRIVER | If your database requires a JDBC driver that Safe does not provide, specify the full path to it here, and it will be copied to the appropriate place in the install directory. | |
SERVLETTYPE | Default | The type of Application Server (servlet engine) you will use with FME Server. Possible values are Default, Apache (Tomcat), and Oracle (WebLogic). Default installs the Apache Tomcat servlet provided with the FME Server installer. |
WEBSERVERHOSTNAME | [FMESERVERHOSTNAME] | The host on which the servlet engine is installed. |
SERVLETPORT | 80 (if open) | The port that the servlet engine host uses or that the built-in Apache server uses. If not specified, the installer checks ports 80, 8080-8085 and uses the first one that is not in use. |
WEBAPPSDIR | [INSTALLDIR]\Utilities\tomcat\webapps | If an Apache Tomcat servlet is already installed on the machine, the path to the webapps directory for the servlet engine, for installing WAR files. |
NOLOGPREFIX | No | If Yes, FME Server log file names are not prefixed with the server host name. |
INSTALL_PYTHON27 | No |
If yes, a Python 2.7 interpreter is included with the installation. (A Python 3.7 interpreter is installed by default.) WARNING: The Python 2.7 interpreter relies on the Visual Studio 2008 runtime, which has security vulnerabilities. If you will run existing FME Desktop workspaces from FME Server that reference Python 2.7, we strongly recommend upgrading them to reference Python 3.x in lieu of installing the Python 2.7 interpreter. |
Post-Install: MSSQL Formats Only

If you plan to run workspaces that reference Microsoft SQL Server and Azure SQL Database (MSSQL_*) readers and writers, you must manually install the SQL Server Native Client and Microsoft System CLR Types for SQL Server on all machines that host FME Engines. To install, navigate to the [INSTALLDIR] and run the following:
msiexec /i sqlncli.msi /qb
msiexec /i SQLSysClrTypes.msi /qb
Examples

The following examples assume you are running a command line from a directory that contains an installer named fme-server-win-x64.msi
.
Invoking the .exe Installer to Extract and Install

Extract installer to C:\FME\installer and install with all default options (similar to Express install)
fme-server-win-x64.exe -d”C:\FME\installer” -s -sp”/qb /norestart”
Extract installer to C:\FME\installer and install core only with an FME Server System Share directory on a share on another machine named "\\machine1\share"
fme-server-win-x64.exe -d”C:\FME\installer” -s -sp”ADDLOCAL=FMEServerCore FMESERVERUSER=MYCOMPANY\user1 FMESERVERUSERPASSWORD=password INSTALLDISTRIBUTEDREPOSITORY=Yes FMESERVERSHAREDDATA=\\machine1\share REPOSITORYSERVERROOTDIR=\\machine1\share /qb /norestart“
Invoking the .msi File to Install, Following Manual Extraction

Install with all default options (similar to Express install), with logging enabled
msiexec /i fme-server-win-x64.msi /qb /norestart /l*v installFMEServerLog.txt
Install core only with an FME Server System Share directory on a share on another machine named "\\machine1\share"
msiexec /i fme-server-win-x64.msi ADDLOCAL=FMEServerCore FMESERVERUSER=MYCOMPANY\user1 FMESERVERUSERPASSWORD=password INSTALLDISTRIBUTEDREPOSITORY=Yes FMESERVERSHAREDDATA="\\machine1\share" REPOSITORYSERVERROOTDIR="\\machine1\share" /qb /norestart /l*v installFMEServerLog.txt
Express install, but with an MSSQL database located on another server
msiexec /i fme-server-win-x64.msi DATABASETYPE=MSSQL DATABASEHOST=DatabaseMachine DATABASEPORT=1433 /qb /norestart /l*v installFMEServerLog.txt
FME Engine-only install, with all other FME Server components on another server named "\\machine1\FMEServerSystemShare"
msiexec /i "fme-server-win-x64.msi" /l*v "install.log" /qb /norestart INSTALLDIR="C:\Program Files\FMEServer\" FMESERVERUSER=MYCOMPANY\user1 FMESERVERUSERPASSWORD=password FMESERVERHOSTNAME="machine1" ADDLOCAL=FMEEngine INSTALLDISTRIBUTEDREPOSITORY=Yes ROOTDIR="\\machine1\FMEServerSystemShare\" DATABASETYPE="PostGreSQL" DATABASEHOST="FMEServerCore" DATABASEPORT="7082" SERVLETPORT="80"
FME Engine-only install, with all other FME Server components on another server named "\\machine1\FMEServerSystemShare" with Python 2.7
msiexec /i "fme-server-win-x64.msi" /l*v "install.log" /qb /norestart INSTALLDIR="C:\Program Files\FMEServer\" FMESERVERUSER=MYCOMPANY\user1 FMESERVERUSERPASSWORD=password FMESERVERHOSTNAME="machine1" ADDLOCAL=FMEEngine, Complete INSTALLDISTRIBUTEDREPOSITORY=Yes ROOTDIR="\\machine1\FMEServerSystemShare\" DATABASETYPE="PostGreSQL" DATABASEHOST="FMEServerCore"DATABASEPORT="7082" SERVLETPORT="80" INSTALL_PYTHON27=yes