Changing the Database Provider for the FME Server Database
To change the database provider for the FME Server Database, perform an “in-place” backup and restore procedure:
- Backup Your FME Server Configuration
- Configure the New Database Server
- Configure the Database Connection
- Restart FME Server
- Restore Your FME Server Configuration
- Remove Dependency, Disable, and Stop the Previous Database Service
FME Server supports PostgreSQL, SQL Server, or Oracle databases.
Backup Your FME Server Configuration
Perform a backup of your FME Server configuration.
Configure the New Database Server
Run the necessary database configuration scripts and post-configuration scripts. Follow the steps in Configure the FME Server Database on a Separate Database Server.
Configure the Database Connection
Note: If using an Oracle database server, you must obtain the Oracle Database JDBC driver. For more information, see https://www.oracle.com/technetwork/database/application-development/jdbc/downloads/index.html.
Locate the following files:
Edit both files, as follows:
Under the heading ‘FME SERVER SETTINGS START’, locate the section titled 'Database Connection' and update the parameters for the database you want to use for your repository.
Parameters
DB_TYPE - Identifies the database server: postgresql, sqlserver, oracle.
DB_DRIVER - The JDBC driver name used for connecting to the database.
DB_JDBC_URL - The JDBC URL used for connecting to the database.
DB_USERNAME - The database user name.
DB_PASSWORD - The database user password.
DB_CONNECT_EXPIRY - The database connection expiry time, in seconds.
DB_SQLSTMTS_PATH - The path to the SQL statement resource bundle.
DB_TYPE=postgresql
DB_DRIVER=org.postgresql.Driver
DB_JDBC_URL=jdbc:postgresql://localhost:5432/fmeserver
DB_USERNAME=fmeserver
DB_PASSWORD=fmeserver
DB_CONNECT_EXPIRY=60
DB_SQLSTMTS_PATH=C:/Apps/FMEServer/Server/database
To use a local installation of SQL Server Express
DB_TYPE=sqlserver
DB_DRIVER=com.microsoft.sqlserver.jdbc.SQLServerDriver
DB_JDBC_URL=jdbc:sqlserver://localhost/SQLEXPRESS
DB_USERNAME=fmeserver
DB_PASSWORD=$FMEserver
DB_CONNECT_EXPIRY=60
DB_SQLSTMTS_PATH=C:/Apps/FMEServer/Server/database
To use a named instance of a SQL Server database
Specify the instanceName property with the DB_JDBC_URL parameter:
DB_TYPE=sqlserver
DB_DRIVER=com.microsoft.sqlserver.jdbc.SQLServerDriver
DB_JDBC_URL=jdbc:sqlserver://<ServerName>;databaseName=<database>;instanceName=<InstanceName>
DB_USERNAME=fmeserver
DB_PASSWORD=$FMEserver
DB_CONNECT_EXPIRY=60
DB_SQLSTMTS_PATH=C:/Apps/FMEServer/Server/database
To use a domain service account instead of a named database user or fmeserver (the default database username)
Specify the integratedSecurity property with the DB_JDBC_URL parameter, the domain service account username for the DB_USERNAME parameter, and the service account password for the DB_PASSWORD parameter:
DB_TYPE=sqlserver
DB_DRIVER=com.microsoft.sqlserver.jdbc.SQLServerDriver
DB_JDBC_URL=jdbc:sqlserver://<sServerName>;databaseName=<database>;integratedSecurity=true
DB_USERNAME=<ServiceAccountUsername>
DB_PASSWORD=<ServiceAccountPassword>
DB_CONNECT_EXPIRY=60
DB_SQLSTMTS_PATH=C:/Apps/FMEServer/Server/database
To specify the database connection port
Specify the port after <ServerName> in the DB_JDBC_URL parameter. For example:
DB_JDBC_URL=jdbc:sqlserver://<ServerName>:1755;
To specify an Always On availability group
If using an Always On availability group, include the MultisubnetFailover property with the DB_JDBC_URL parameter:
DB_JDBC_URL=jdbc:sqlserver://<ServerName>;databaseName=<database>;MultisubnetFailover=true
DB_TYPE=oracle
DB_DRIVER=oracle.jdbc.driver.OracleDriver
DB_JDBC_URL=jdbc:oracle:thin:@localhost:1521:orcl
DB_USERNAME=fmeserver
DB_PASSWORD=fmeserver
DB_CONNECT_EXPIRY=60
DB_SQLSTMTS_PATH=C:/Apps/FMEServer/Server/database
Restart FME Server
Restart all of the FME Server System Services.
Restore Your FME Server Configuration
Perform a restore of your FME Server configuration:
Remove Dependency, Disable, and Stop the Previous Database Service
If the database service from which you migrated is the PostgreSQL database that was included in a default installation of FME Server (such as an express install), you must remove the dependency of the FME Server Core on that database, and then disable and stop it. For more information, see Removing the FME Server Core Dependency on the FME Server Database.