Firebird Client Compatibility with Firebird Server

I have a question about Firebird client and server versions. I know that the database file must match the Firebird server due to ODS changes. that is, Firebird recommends backing up / restoring the database file between the server version 2.5.1 and 2.5.2 ...

But what about client connections to the server?

What combinations are ok?

Client 2.5.2 β†’ Server 2.5.2 (should be fine .;))
Client 2.5.2 β†’ Server 2.5.1
Client 2.5.1 β†’ Server 2.5.2
Client 2.5.x β†’ Server 1.5
Client 1.5.x β†’ Server 2.5.2

Are there any known issues? What is the recommendation of Firebird? Is it always good to use a new official customer? But due to the fact that we have many client installations, I cannot be sure that the server matches the client version.

Hope someone can give me some advice.

+6
source share
1 answer

The Firebird protocol has a version control mechanism: the client and server discuss which version of the protocol to use. Current versions of the Firebird server support all previous versions of the Firebird protocol (up to Interbase 6.0, from which it was forked). This means that any version of the Firebird client can talk to any version of Firebird. However, if you are using an older client, you cannot use the features added to newer versions of the protocol, and you cannot use some performance improvements in the protocol.

So: yes, you can use older versions, but it is recommended to use the latest ones because errors will be fixed, new features added or performance improvements.

My answer applies only to TCP / IP connections. For "local" connections to XNET or named pipes, I know that interruptions occurred between 1.5 and 2.0, and you might even need a client version that matches the version of Firebird server.

For Firebird 3, using older versions of the client has some reservations: by default, Firebird 3 requires encryption of the wired protocol and a new authentication mechanism, both of which were introduced in Firebird 3 with the wired protocol of version 13. To be able to connect to the older version of the client, you need to make The following changes to firebird.conf and restart Firebird:

  • Refuse the encryption requirement with the setting WireCrypt = Enabled (default Required )
  • Enable legacy authentication with the setting AuthServer = Srp, Legacy_Auth (default Srp )
+5
source

Source: https://habr.com/ru/post/954769/


All Articles