Ransomware attacks became the serious problem for many companies: during the last week, we had 3 incidents from different customers which had their Firebird databases encrypted by ransomware viruses. Luckily we were able to help all of them, but the scale of the problem definitely increases.
So, Firebird 3.0.1 is out, and you are planning to move to it. But are you prepared for this task? Migrating to previous versions was usually an easy task, but is this still true for Firebird 3.x? Answer the following questions to know if you are really prepared to move to Firebird 3!
1) Can I connect to a database created in Firebird 2.5, using Firebird 3?
- Yes, as it always happened in the previous versions!
- Firebird 3 cannot access databases created in older versions of Firebird, so it is necessary to PUMP the data to an empty database created in Firebird 3.
- Firebird 3 only access databases created with ODS = 12, so it is necessary to do a backup (gbak) before migrating to Firebird, and restore it in Firebird 3, to updated the ODS.
- Yes, but first you need to run gfix with the new parameter -ods=12 to updated the ODS of the database.
2) Is it correctly to say that Firebird 3 finally solved the problem of someone stoling the database file and access all its data?
- Of course, since now Firebird 3 comes with native database encryption!
- Yes, if you enable encryption in the database file, the security is guaranteed!
- Yes, if you create a good/safe encryption plugin, and take all precautions regarding dealing with the encryption key.
- Unfortunately, there is no way to avoid the stolen database file to have its data accessed.
3) Regarding SYSDBA, we can say...
- Firebird 3 doesn't even requires the existence of an user named SYSDBA.
- SYSDBA needs to exists, since he is the Firebird's administrator.
- The SYSDBA user is now called ADMIN.
4) What is the name of the Firebird executable on Windows?
- It depends on the selected architecture.
- For SuperServer, it is fbserver.exe. For Classic, it is named fb_inet_server.exe. For SuperClassic, it is fb_smp_server.exe
- Firebird 3 doesn't has an executable anymore, only a DLL which is plugged directly to the Operating System as a service.
5) Regarding the enhancements in the Firebird's communication protocol, to make it more efficient in high latency networks, we can say:
- In general, the data retrieved by selects will be transferred faster to the client.
- In general, the data retrieved by selects will be transferred much faster to the client, unless you are transfering blobs.
- Not only the selects, but insert, delete and update operations also became faster with the enhancements.
- Better user text files for storage! Databases are devil stuff.
6) It is impossible to connect to a Firebird 3 server using and older client library (fbclient). This statement is:
- Correct. Firebird 3 enhanced security forbids insecure connections from older client libraries.
- Incorrect. Disabling the wire encryption and enabling the legacy authentication plugins, older fbclient will be able to connect to Firebird 3.
- Incorrect. By default, older clients can connect to Firebird 3.
- Correct, but Firebird 3 will accept the connection only if the user is member of the Firebird Foundation.
7) What about centralized users?
- Firebird users are still centralized in the security database.
- The Developer/DBA defines for each database file, if its users will be stored locally or not.
- Firebird chooses automatically if the user being created will be stored locally or in the security database.
- Nothing changed compared to the previous versions.