IBExpert Replicator Enterprise IBER

The new IBExpert Replicator Enterprise is now ready!
Add real-time replication to any Firebird database without any downtime!

The new IBER solution will be installed in a remote session by an IBExpert engineer on a Windows or Linux machine (virtual or physical) in your network while your employees are working on the database. 

What do you need for this? We recommend installing the IBER on a virtual machine, so that in the event of a unrecoverable failure of your existing production server, making it impossible to use the database on that machine, you or our engineer can activate the replicated database as a new production database by running a single batch file.

The existing replication master server can be any Linux or Windows machine in your local network. We recommend a server, which will execute the IBExpert Benchmark with a least 100% in each category. If faster servers are needed, please consider our IFS Server Hardware.

The replication target server can be any physical or virtual machine also running Windows or Linux. 

It should be preinstalled with the same Firebird installation that is already used on your existing master server. If our help is needed and you are not sure how to copy such a configuration, our engineers can evaluate your master server installation and transfer the Firebird server to a second machine following a very brief out time.

The IBER virtual machine can run on a separate machine or also on your replication target server as a virtual machine. If you do not have any preferred VM system, we will deploy the free VirtualBox software.

The IBER basic price includes up to one hour of remote session work for the setup. This requires that we get the above setup already preinstalled and the customer can give us the connection strings/SYSDBA or Owner and password of the Firebird databases used. Also, we expect to have the above-mentioned IBER VM and target server with a similar Firebird server already preinstalled. The basic price covers up to 2 databases to be replicated.  

If the customer is unable to carry out these preparations, we can perform additional configuration work based on our IBExpert Hotline package rates. This basically means: If you do not have your own IT manager, who is able to implement and document all above steps for us, and also your software manufacturer does not want to help you on this task, you can be confident that our IBExpert engineers will make it work. 

The IBER Product also includes 12-month emergency service in case of unrecoverable errors on our master server up to 4 times per year. If this happens more often, you should consider changing your server hardware. A IBExpert hotline package will still allow you to use our service, also when issues are to be solved that are not connected to the IBER replication. If such an emergency case is reported to us, but we see that a simple server restart solves the problem or the problem has nothing to do with Firebird, we will charge the time on the customer’s hotline account.

At the end of the initial 12-month period, we will charge you for a further 12 months with the IBER Subscription package, if our help and software updates are still required. Without the continued subscription, the software will not cease working, but in case of an emergency, our remote support then requires a prepaid hotline package.

What do you get?

After the basic installation carried out by our engineers remotely, which is typically done using our GoTo Meeting conference system, you will see a number of separate batch files on the IBER virtual machine which will perform the following tasks:

a) Create and init a new replication target for a specific master database
b) Drop any replication technology from a specific master database
c) Execute the replication based on Firebird events
d) Convert a target database to be a 100% replacement for the master database

If your software manufacturer does not want any alterations made in the database or does not directly support our technology, you can always execute script b) whenever the software manufacture applies, for example, his updates on the database, since this script will completely remove any IBER object from the database.  

After the updates have been applied, you only need to run the script a) again to recreate any necessary IBER objects and init the new replication target again. 

After init has been run, script c) will start and execute all operations (insert/update/deletes) performed in the master database, almost in real time, onto the replicated target database. If script c) cannot connect to master or target database, for example because of a temporary server reboot, it will ignore the errors for a few seconds and, after the reconnection is made, will process all records that were logged while the connection was not possible. 

If a backup and restore of the existing database is performed, a new init process using script a) is mandatory. A backup alone does not need such a new init.

The IBER replication can be interrupted at any time, due to a local power cut or whatever other reason. Once the systems are back online, there is no manual work required to reactivate the replication again and no new sync is necessary. Everything that is done on the master database will be immediately replicated to the target database right after the IBER VM and the target server can be reached again.

Important: If your software manufacturer claims that any manipulation of the database structure will result in a loss of warranty, you should request the manufacturer get in touch with us, since we can guarantee that our system has no negative impact on any Firebird 2.5-Firebird 5.0 databases except for a very low level of additional server performance which the IBER system will operate via one additionally connected database user. 

Zero maintenance and full real-time replication. 

Pricing

IBExpert Replicator Enterprise IBER Starter Package including init and 12 months support 1020 €.
IBExpert Replicator Enterprise IBERSub Subscription Package 12 months support 610 €.


Whats New

IBExpert 2024.12.01
(and bugfixes 2024.12.04/2025.02.05/2025.02.27/2025.03.07/2025.03.28/2025.04.22/2025.05.08)

1. Event blocks

  • "Before start trace session" event block implemented.
    See \Blocks\Templates\EventBlocks\TAS.BeforeStartTraceSession.ibeblock for an example.
    Also see description of new "Quick start trace session" feature below.

2. Code editors

  • Support for multilevels in User actions submenu.
    See \Blocks\Templates\EventBlocks\CodeEditorUserActions.ibeblock for a working example.

3. Database Comparer

  • Fixed the problem with missing stored functions and packages while comparing Firebird 5 databases.

4. Quick start trace session feature implemented

  • This feature is intended to start a trace session for an active connection with a single click.
  • Default trace config is provided by IBExpert and can be modified in the "Before start trace session" event block which is fired when quick start or regular start (Services | Trace and Audit | Start new trace session) is performed.

    There are several other properties of trace session and trace form which can be customized in the "Before start trace session" event block.

    See \Blocks\Templates\EventBlocks\TAS.BeforeStartTraceSession.ibeblock for complete example.
  • To quick start a trace session, use the corresponding button on the main form tool button. Alternatively it can be done using the [Ctrl] + [Shift] + [T] shortcut.

5. IBEBlock

  • ibec_psql_PreprocessPSQL function implemented.

    It inserts some placeholders in the form of single line comments into a provided PSQL source (procedures, functions, triggers and package routines) which can be later replaced with additional debug statements (INSERT into a log table etc.). For a complete example see \Blocks\DefaultBlocks\PSQL.PrepareForDebug.ibeblock.

    There is also a working implementation of calling this block from \Blocks\Templates\EventBlocks\ CodeEditorUserActions.ibeblock which performs the preparation of the PSQL source for debugging and removes debug statements and comments from the PSQL source when they are no longer needed.
  • @SysUtils.GetFilePath function implemented.

    The function sequentially checks the specified folders for the presence of the file. If the folder contains the specified file, the function returns the full path to it and exits. Otherwise, it returns NULL.

Example:

    ...
    sBlockFileName = 'PSQL.PrepareForDebug.ibeblock';
    sBlockFilePath = @SysUtils.GetFilePath(sBlockFileName,
       ibec_GetEnvironmentVariable('IBE_USERBLOCKSDIR'),
     ibec_Coalesce(ibec_GetEnvironmentVariable('IBE_APPDIR'), '') + '\Blocks\DefaultBlocks');

  if (sBlockFilePath is null) then
  begin
    ibec_ShowMessage('Looks like ''' + sBlockFileName + '''is missing...');
    Exit;
    end; 

6. Minor bugfixes and small improvements


IBExpert 2024.04.07

1. Database Registration

"Show server version mismatch warning" option added (Additional tab). 

If this option is ON (default) IBExpert will compare the specified and the actual version of the database and warn in case of a mismatch with a choice of possible actions.

2. PSQL Debugger

Support for time zones implemented (Firebird 4, 5). 

3. Data Grids

The possibility to dump blobs to file without preloading them into the IBExpert GUI has been implemented; it is available from the grid context menu.

Fixed the issue with incorrect representation of RDB$DB_KEY for tables with >2G records. 

4. Code Completion

Fixed the incorrect behaviour when selecting/unselecting items in the list using the mouse. 

5. Database Inside

Support for Firebird 5 databases. 

6. SQL Editor, Statements History List

Added counters for page operations. 

7. Database Comparer

Support for parenthesized SELECTs (Firebird 5) implemented. 

8. Other minor bugfixes and small improvements


IBExpert 2024.01.22

Mainly bug fixes.


IBExpert 2023.11.22

Mainly bug fixes.


IBExpert 2023.10.27

1. Code Editor, Code Completion

  • Improved performance especially on databases with lot of objects.
  • Suggesting possible joins based on existing relationships by foreign keys - call the Code Completion after JOIN keyword.
  • There was a bug on some configurations in the previous version which caused IBExpert to freeze when the Code Completion is fires. Fixed in this version.

2. Database Inside

  • Support for Firebird 4 databases.

3. Partial support for Firebird 5 implemented

  • Support for all known syntax changes/additions in the PSQL parser:
     SKIP LOCKED, WHEN NOT MATCHED BY SOURCE, parenthesized SELECTs etc.

     However, there is NO support yet for parenthesized SELECTs in the Database Comparer.
     Also the PSQL debugger doesn't allow to debug roitines with subroutines which reference variables in a main routine.

  • Support for new built-in functions in the Code Parameters hint.
  • Support for partial indices in the index editors and metadata extract.
  • Support for parallel workers in following IBEBlock functions:
    ibec_BackupDatabase, ibec_RestoreDatabase, @Services.RepairDatabase.

      There is a new option available - ParallelWorkers (or just Parallel) - which allows to specify number of parallel workers (e.g. ParallelWorkers=4)

4. Other minor bugfixes and small improvements


IBExpert 2023.09.13

Mainly bug fixes.


IBExpert 2023.07.09

1. DB Explorer

  •   Activating/deactivating database objects from the Project View tree.

2. Search in Metadata

  •   Possibility to search in scripts/blocks (IBE$SCRIPTS table) has been implemented.

3. Code Editors

  •  Hyperlinks behaviour for package routines implemented.
  • "Before load from file" event block implemented. This block allows you to perform some actions before the appearance of the "Open file" dialog; for example, change a source directory. See block template for more details.
  • "Init/perform user actions" event block implemented. This block allows you to define user actions with code editor content which will be executed via a shortcut and/or from the code editor context menu (the very first item in the menu, if the block exists and is active). See block template for more details.

4. Dependencies trees

  •   Solved some issues with the incorrect display of package dependencies.

5. Copy Database Object

  • Support of SQL role in copy blocks added.

6. IBEBlock

  • @Services.RepairDatabase and @Services.SetDBProperties functions implemented. 

    Example:

    execute ibeblock
    as
   begin
     -- Both functions return nothing (NULL) if there were no errors,
     -- otherwise they will return an error message 

     sDBName = 'dbserver/3053:D:\databases\db.fdb';
      sConnectParams = 'ClientLib="D:\ClientLibs\fbclient_30.dll"; User=SYSDBA; Password=masterkey;';

    -- Supported repair params: Limbo, CheckDB, IgnoreChecksum,
      -- KillShadows, Mend, Sweep, Validate, ValidateFull

      Res = @Services.RepairDatabase(:sDBName, :sConnectParams || 'Mend');

     if (Res is not null) then
       ibec_ShowMessage(Res); 

      -- All supported params are listed in the example

      Res = @Services.SetDBProperties(:sDBName, :sConnectParams || 'PageBuffers=2048; SQLDialect=3;
           SweepInterval=20000; ForcedWrites=TRUE; ReadOnly=FALSE');

     if (Res is not null) then
        ibec_ShowMessage(Res);

    end;

  • ibec_ExtractMetadata function:
    ExtractPrimaryKeys and ExtractUniques options added to prevent extraction of primary keys and unique constraints. Together with the existing ExtractReferences and ExtractChecks these options allow you to suppress the extraction of all constraints.

    By default all of these options are ON (TRUE). To disable the extraction of primary keys, for example, set the corresponding option to FALSE: ExtractPrimaryKeys=FALSE.

  • Code Editor namespace with set of functions implemented. See example of usage in the "Init/perform user actions" event block template.

7. Minor bugfixes and small improvements


IBExpert 2023.04.14

Minor bugfixes and small improvements.


IBExpert 2023.03.06

 1. Data Grid

  • Possibility to edit UUID/OCTETS values in the filter criteria tree has been implemented.
  • The mouse wheel can now be used to perform Page Up and Page Down actions.
  • By default the Ctrl key should be held to perform PageUp/PageDown.
  • To change the default modifier put the following piece of code into the After IBExpert starts event block:
    ibec_SetGlobalVar('IBE$DATA_GRID_PAGE_SCROLL_MODIFIER', <value>);

        where <value> is one of following: empty string, null, 'CTRL', 'ALT', 'SHIFT'.

        An empty string or null as a new modifier value makes PageDown/PageUp a default                behaviour of the mouse wheel in the Data Grid.

2. Code Editor

  • Support of keyboard templates in the Code Completion list.
    There is a new option Show keyboard templates in Code Completion list in the Options | Editor Options | Code Insight.

3. Automatic restore of a dead connection

  • By default if the database connection is lost IBExpert shows a dialog window and offers to restore a dead connection. To attempt to restore the connection automatically without user confirmation put following line of code into the After IBExpert starts event block:
    ibec_SetGlobalVar('IBE$RESTORE_DEAD_CONNECTION', TRUE);

4. Database Object Editors

  • Support of object names longer than 31 chars (Firebird 4) where they were not yet supported.

5. Export Data

  • Export to clipboard in JSON format implemented.

6. Code Formatter

  • Support of space after opening and before closing bracket options.

7. Minor bugfixes and small improvements



Firebird 5.0 Beta 1 release is available for testing

Firebird Project announces the first Beta release of Firebird 5.0, the next major version of the Firebird relational database, which is now available for testing.


Remote Firebird 4/5 Update Workshop



(German-language version below)

In successful workshops with our customers, we have perfected the solution to all conversion problems to such an extent that we can also implement your requirements quickly and flexibly via online training.

With our experience, we can support you as a user or developer to implement all the necessary steps for a successful upgrade of your Firebird 2.x-based application so that it can also run with Firebird 4 or 5.

We know how to convert your database and create a powerful Firebird 4/5 server configuration with maximum compatibility with your existing application. 

Prepare your database for Firebird 4/5 compatibility

Each server-based object, for example stored procedures, triggers, UDFs etc., is automatically verified and you will receive useful tips on how to prepare your existing Firebird 2.x metadata for later conversion in the production system.

You will also receive an introduction to a new Firebird setup and learn how to install a secondary, newer parallel Firebird server version on your or your customers' database server while the existing installation is still in production.

Even rolling out an automated update to hundreds or thousands of customer installations is possible without any manual installation using our IBExpert OEM technology.

We know what can happen and our setup offers all your customers an automated upgrade. If everything has worked well, they can start working with the new Firebird database server instance.

However, if something unexpected happens, you will receive a detailed log, but the existing setup will still be available. 

This allows you to decide whether a manual setup is required or whether the automated update process needs to be improved.

Test your application for Firebird 4/5 compatibility

The basic workshop lasts approx. 2 days and includes an analysis of the existing system as well as a backup/restore of all required data on the new Firebird server.

To avoid wasting time waiting for the backup/restore, we usually offer our workshops in a 4x4 hour format.

You will be surprised how quickly we can get your application up and running with the new Firebird 4/5 database as the backend. 

Our setup utilises several available compatibility configuration parameters, so that you can continue to enjoy all the benefits of the new Firebird versions and achieve significantly better performance, especially under high load, in multi-user installations.

Further support

Once the conversion is complete, we can also offer customised support to create an IBExpert OEM-based upgrade module, which you can deliver to all your customers with your next update.

If your customers complain about the speed of your software, we can also train your team to use the IBExpert Benchmark, analyse the results and communicate the often very poor results to your customer, who is responsible for the hardware chosen for the Firebird server.

And finally, almost any software can benefit from a thorough examination regarding poor database design and bad SQL statements. 

We can show you how to locate such issues and help you improve the performance of your software.

For an offer, please contact us with the subject "Remote Firebird 4/5 Update Workshop" with a brief description of your current products and your team: register@ibexpert.biz.





Remote Firebird 4/5 Update-Workshop

In erfolgreichen Workshops mit unseren Kunden haben wir die Lösung aller Konvertierungsprobleme soweit perfektioniert, dass wir auch Ihre Anforderungen schnell und flexibel via Online-Schulung umsetzen können.

Mit unserer Erfahrung können wir Sie als Anwender oder Entwickler dabei unterstützen, alle erforderlichen Schritte für ein erfolgreiches Upgrade Ihrer Firebird 2.x-basierten Anwendung umzusetzen, sodass diese auch mit Firebird 4/5 ausgeführt werden kann.

Wir wissen, wie Sie Ihre Datenbank konvertieren müssen, um eine leistungsstarke Firebird 4/5-Serverkonfiguration mit maximaler Kompatibilität mit Ihrer bestehenden Anwendung erstellen.

Bereiten Sie Ihre Datenbank auf die Kompatibilität mit Firebird 4/5 vor

Jedes serverbasierte Objekt, zum Beispiel Stored Procedures, Trigger, UDFs usw., wird automatisch überprüft und Sie erhalten nützliche Hinweise, wie Sie Ihre vorhandenen Firebird 2.x-Metadaten kompatibel für die spätere Konvertierung im Produktionssystem vorbereiten. 

Außerdem erhalten Sie eine Einführung in ein neues Firebird-Setup und erfahren, wie Sie eine sekundäre neuere Firebird-Serverversion auf Ihrem oder dem Datenbankserver Ihrer Kunden parallel installieren, während es sich noch in der Produktion mit der bestehenden Installation befindet.

Selbst die Einführung eines automatisierten Updates auf Hunderten oder Tausenden von Kundeninstallationen ist mithilfe unserer IBExpert OEM-Technologie ohne eine manuelle Installation möglich.

Wir wissen, was passieren kann und unser Setup bietet allen Ihren Kunden ein automatisiertes Upgrade. Wenn alles gut funktioniert hat, können sie mit der neuen Firebird-Datenbankserverinstanz arbeiten.

Sollte jedoch etwas Unerwartetes passieren, erhalten Sie ein detailliertes Protokoll, aber das bestehende Setup ist weiterhin verfügbar.

Somit können Sie entscheiden, ob ein manuelles Setup erforderlich ist oder der automatisierte Update-Prozess verbessert werden muss.

Testen Sie Ihre Anwendung auf Firebird 4/5-Kompatibilität

Der Basis-Workshop dauert ca. 2 Tage und beinhaltet eine Analyse des bestehenden Systems sowie ein Backup/Restore aller erforderlichen Daten auf dem neuen Firebird-Server.

Um Zeitverschwendung beim Warten auf das Backup/Restore zu vermeiden, bieten wir unsere Workshops in der Regel im 4x4-Stunden-Format an.

Sie werden überrascht sein, wie schnell wir Ihre Anwendung mit der neuen Firebird 4/5-Datenbank als Backend zum Laufen bringen.

Unser Setup nutzt mehrere verfügbare Kompatibilitätskonfigurationsparameter, sodass Sie weiterhin alle Vorteile der neuen Firebird-Versionen nutzen und insbesondere bei Mehrbenutzerinstallationen eine deutlich bessere Leistung, insbesondere unter hoher Last, erzielen werden.

Weiterer Support

Sobald die Konvertierung abgeschlossen ist, können wir auch individuelle Unterstützung bei der Erstellung eines IBExpert OEM-basierten Upgrade-Moduls anbieten, das Sie mit Ihrem nächsten Update an alle Ihre Kunden ausliefern können.

Sollten sich Ihre Kunden über die Geschwindigkeit Ihrer Software beschweren, können wir Ihr Team auch im Umgang mit dem IBExpert Benchmark schulen, die Ergebnisse analysieren und die oft sehr schlechten Ergebnisse mit Ihrem Kunden, der für die für den Firebird-Server gewählte Hardware verantwortlich ist, kommunizieren.

Und schließlich kann fast jede Software von einer gründlichen Überprüfung hinsichtlich eines schlechten Datenbankdesigns und fehlerhafter SQL-Anweisungen profitieren.

Wir zeigen Ihnen, wie Sie solche Probleme lokalisieren und helfen Ihnen, die Performance Ihrer Software zu verbessern.

Für ein Angebot kontaktieren Sie uns bitte mit dem Betreff „Remote Firebird 4/5 Update Workshop“ und beschreiben Sie uns kurz Ihre aktuellen Produkte und Ihr Team: sales@ibexpert.biz.




IBExpert Personal Edition features

The IBExpert Personal Edition is a free version, offering new users the chance to get acquainted with IBExpert at their own pace. It is however somewhat limited in its functionality, and does not include the following features:

Further information regarding the free IBExpert Personal Edition can be found on our website.

Please note: due to the vast amounts of downloads the free IBExpert Personal Edition registration procedure is fully automated. We can therefore provide neither support nor service for this software edition.

Further information regarding the free IBExpert Personal Edition can be found in our IBExpert online documentation:

You can also find tips and solutions to a number of frequently asked questions: