Instructions for migrating to Firebird v.3

Note
You can find information about installing the server, architecture types and changing the SYSDBA password in the Firebird documentation.
Attention!

Starting with version 3.9.2 ELMA supports Firebird 3.0.1. Tha basic ELMA delivery still includes Firebird 2.5.

Earlier versions of the system support only Firebird 2.5.

ELMA 3.9.2 and above when working with Firebird 3.0.1 supports only created new databases or working with databases, which have been changed manually to provide compatibility with the new version.

To move to Firebird 3.0.1, follow these steps:

1. Convert the ELMA database from Firebird 2.5 to 3.0.1:

1.1.    Connect to the current ELMA database (Firebird 2.5). For this, you can use the standard ISQL utility or install IBExpert.

1.2.    Due to the fact, that three keywords were added in Firebird 3.0 - DELETING, INSERTING, UPDATING - any columns or tables with such names must be re-created with the necessary capitalization. For instance, there is a SYS_PREUPDATEVERSION table with the UPDATING column.
To convert the database from version 2.5 to 3.0.1, you need to rename the column in the old version. Execute the query:

ALTER TABLE SYS_PREUPDATEVERSION ALTER COLUMN UPDATING TO "Updating"

1.3.    After that, back up the database of the 2.5 version. Execute the following command in cmd:

gbak -backup -user sysdba -password masterkey "C:\ELMA\UserConfig\BASE.FDB" "C:\ELMA\UserConfig\base_25.fbk"

2. Download (e.g. from the official website) and install Firebird 3.0.1.

3. Stop the ELMA web server. If:

  • ELMA is installed on IIS, right-click on This PC and select Manage

Go to Services and Applications -> Internet Information Services (IIS) Manager -> Connections -> Application Pools. Find and select ELMA3. In the right menu, click Stop.

  • ELMA is installed on Cassini. Open the Task Manager, Services tab. Right-click on ELMA3[Edition]CassiniService and select Stop.

4. Now edit the configuration.config file. By default, it is stored in: <local disk:>\<ELMA directory>\<UserConfig>\configuration.config.

Make the following changes:

  • the server port;

  • the new database name. 

After making the changes, save the file.

5. For ELMA to start on Firebird 3.0.1, edit the firebird.conf file (the path to the file may be the following: <local disk:>\Program Files\<Firebird directory>\Firebird_3_0\firebird.conf). Open the file in any text editor.

 Make sure that the following parameters are specified in the firebird.conf

  • WireCrypt = Disabled
  • AuthServer = Legacy_Auth, Srp, Win_Sspi
  • AuthClient = Legacy_Auth, Srp, Win_Sspi

In the RemoteServicePort parameter, you can specify the server port. If you change the port here, change it in ELMA as well. 

 Uncomment the lines with the parameters (delete "#"): 

  • #WireCrypt = Disabled
  • #AuthServer = Legacy_Auth, Srp, Win_Sspi
  • #AuthClient = Legacy_Auth, Srp, Win_Sspi
  • #RemoteServicePort

 It should look like this:

 After making the changes, save the firebird.conf file.

 6. Stop the Firebird service. Right-click on This PC and select Manage

Go to Services and Applications  -> Services. Right-click on Firebird Server in the list and select Stop.

7. Start the Firebird service. In the right menu, select Start.

 8. Start the ELMA web server.

  • ELMA is installed on the IIS server. Right-click on This PC and select Manage

Go to Services and Applications -> Internet Information Services (IIS) Manager -> Connections -> Application Pools. Find and select ELMA3 in the list. In the right menu, click Start.

  • ELMA is installed on Cassini. Open the Task Manager, Services tab. Right-click on ELMA3[Edition]CassiniService and select Start.

9. Make sure that ELMA Web Application works. After starting ELMA, a new database will be created with the name, specified in the configuration.config file. From this moment on, Firebird 3.0.1 is used.

10. Restore the database from the backup. Use the gbak utility of Firebird 3 (<local disk:>\Program Files\<Firebird directory>\Firebird_3_0\). Stop the ELMA web server (see step 3) and execute the following command in cmd:

gbak -replace -user sysdba -password masterkey "C:\ELMA\UserConfig\base_25.fbk" "C:\ELMA\UserConfig\base_30.fdb"

11. Start the ELMA web server (see step 8)

12. Check that everything works and that the old database is displayed in Web Application.

13. Re-index the system objects. Sign in to the system using the administrator account and go to Administration - System - Indexation - Index Again.