Linux x86 https://github.com/FirebirdSQL/firebird/releases/download/v4.0.2/Firebird-4.0.2.2816-0.i686.tar.gz https://github.com/FirebirdSQL/firebird/releases/download/v4.0.2/Firebird-debuginfo-4.0.2.2816-0.i686.tar.gz
Linux AMD64 https://github.com/FirebirdSQL/firebird/releases/download/v4.0.2/Firebird-4.0.2.2816-0.amd64.tar.gz https://github.com/FirebirdSQL/firebird/releases/download/v4.0.2/Firebird-debuginfo-4.0.2.2816-0.amd64.tar.gz
IMPORTANT! Android builds were not thoroughly tested, therefore they should be treated as experimental. Please report any problems you experience to the development mailing list: https://firebirdsql.org/en/devel-mailing-lists/
other languages: https://firebirdsql.org/en/reference-manuals/
----------------------------------------------
The higher the degree, the greater the respect given to the humblest!RAD 11.3
1. General Notes Thank you for choosing Firebird 4.0. We cordially invite you to test it hard against your expectations and engage with us in identifying and fixing any bugs you might encounter.
ODS 13 is introduced and it’s a major ODS upgrade, so older databases cannot be opened with a Firebird 4 server. The engine library is named engine13.dll (Windows) and libEngine13.so (POSIX). The security database is named security4.fdb. Binaries layout and configuration are unchanged from Firebird 3.
That said, you can copy the Firebird engine library from the Firebird 3.0 distribution package (named engine12.dll (Windows) and libEngine12.so (POSIX), and located inside the /plugins sub-directory) to continue working with databases in ODS12 without needing a backup/restore. However, new features introduced with Firebird 4.0 will not be accessible.
----------------------------------------------
The higher the degree, the greater the respect given to the humblest!RAD 11.3
Firebird is released in multi-platform as showed above! Firebird was born from Interbase 6 when it was "open-source" by Borland! -- today, it following separated way...
Firebird / Interbase base protocol is TCP/IP
Note: Firebird have mode "Classic" and "SuperServer" (SS is default) and Mix (Classic + SuperServer way) Firebird can use "Embedded" if you needs, for Mobile/Win/Linux! ---------- "Server" can be Windows or Linux or any other O.S. supported by Firebird!!!
- in Mobile, as default, you use like a "Client" --- connect to server Win/Linux using TCP/IP
- in PC you can use it like "server" or "client"! -- database file(s) needs to be hosted same computer than server-firebird by default!
----------------------------------------------
The higher the degree, the greater the respect given to the humblest!RAD 11.3
Firebird is supported by many languages currently, like new RUST:
Rust Firebird Client updated with Firebird wire protocol implemented in pure Rust and ARM support
https://crates.io/crates/rsfbclient https://github.com/fernandobatels/rsfbclient
----------------------------------------------
The higher the degree, the greater the respect given to the humblest!RAD 11.3
If the full path to the database is not specified, the database will be created in one of the system directories. The particular directory depends on the operating system. For this reason, unless you have a strong reason to prefer that situation, always specify either the absolute path or an alias, when creating a database.
Basically, Firebird works like this: -- The database must be located on the same computer as the Firebird-Server;
Why?
Why Firebird-Server controls data file access to keep control over uniqueness or not (sharing) between sessions opened by clients.
However, auxiliary files, for example, if the Database has more complementary files, it is possible to store them on other disks besides the disk/computer where Firebird-Server resides. Thus, clients "should not have access to create new databases directly", if they do, they would be breaching server security.
In this case, it is the DBA's duty to create the Database files requested by the clients. But wouldn't that be something interesting, because, imagine 1000 customers asking to create a database? Of course, in scenarios like "clouds" there are services that allow customers to create their own database... but that's actually part of the truth.
But for database application database, you shouldn't have direct access to the server, which would open loopholes for many other harmful actions. In Firebird 3/4, you must use the configuration file "Firebird.conf" and "Database.conf" to determine the locations and how to access the database files on the server. In the file "Firebird.conf" you can determine the types of access in general (all), protocols, ports, among many other security parameters.
In the "Database.conf" file you can specify the security parameters for a particular database, that is, each database can have its own rules, in addition to the general rule.
Thus, you form your curtain of fire to prevent misuse of Firebird-Server and indiscriminate access of Computer-Server.
The ideal way to give access to your database is to use the "Database.conf" file to hide the address and directory where the database file resides.
This is done by creating an "alias" for the actual location of the database file.
In my example, I created a DB file where my client application was, because Firebird-Server was installed on this same computer.
However, for more real projects, it might be possible to create a 3-tier application, which would be responsible for creating the database, for example.
This application should reside on the Firebird-Server, and it would be responsible for executing the file creation actions. Then, clients would send requests to app-3-layers, and it would talk to Firebird-Server and create the DB file, and it would respond to clients with the required information, i.e. name, address and port, user and password so that customers could access the new database.
----------------------------------------------
The higher the degree, the greater the respect given to the humblest!RAD 11.3
The "Alias" must be determined in the "Database.conf" file, so clients will not be able to know its value in advance.
Therefore, only the DBA should know about it.
On the other hand, customers will be able to know the "ALIAS" for use only. Not its value! --> this is part of the security system for accessing real directories.
The DBA would make the "Alias" available for the client to use, but the client could not create a new database file, since this "alias" refers to an already determined file, and the attempt to create a new file would imply file creation privileges on the server, among others....
----------------------------------------------
The higher the degree, the greater the respect given to the humblest!RAD 11.3
# Directives for MYBIGDB MYBIGDB = opt/databases/mybigdb.fdb
Or...
MYBIGDB = $(var_to_folder_dbs)/mybigdb.fdb { ....config params for this Database.... } ---------- Clients string-connection:
... nnn.nnn.nnn.nnn/nnnn:MYBIGDB...
----------------------------------------------
The higher the degree, the greater the respect given to the humblest!RAD 11.3
All tests in this White Paper were performed on the same hardware with a SATA SSD for the OS and an NVMe SSD for the database, which is the standard hardware we use in our Basic IFS Servers. Our high-end IFSLR servers offer rather better performance, but are only distributed with Linux OS, and were therefore not used for these comparison performance tests.
There is no clear winner here, although Firebird 3 on Linux OS has some small advantage.
In the other hand, the Linux Operating System has a clear advantage over Windows, and Firebird 3 has some advantage in the CPU and Thread test, although Firebird 4 on Windows has a clear advantage on the Drive test."
----------------------------------------------
The higher the degree, the greater the respect given to the humblest!RAD 11.3
in Apr/2020 conference in Brazil ( Largest number of Firebird users ) Limits v3: Database: 64TB table size: 18TB
Limits v4: 128 TB (232 x page size) https://firebirdsql.org/en/firebird-technical-specifications/
----> Largest Known Database: 11 TERABYTES -- a Brazilian "insurance" company - however, the name cannot be disclosed for security reasons!
Firebird 3 installer: 9MB for Windows
Oracle Express 10g = 216MB
SQL Server Express Core 2016 = 411MB
----------------------------------------------
The higher the degree, the greater the respect given to the humblest!RAD 11.3
NOTE: for any usage it's necessary ALWAYS test the "FIREBIRD.CONF" configurations! -- Dont exists "magic" setup for any environment! ----- each "case" is a "new case"!!!
if it does not works in your environment, CERTALLY, your configuration it's not OK for your environment!
IBSurgeon is reference to test and customized "Firebird.conf" files They have many years in performance test in many scenary (hardware using Firebird)
-- Firebird is so quick or more than MySQL, including in Internet!!! (v3 or v4)
---- Firebird have just one problem when using in high-latency network (internet) ... BLOB fields!!! unfortunatelly this fields really it's slow in some cases! (mainly if BLOB is big).
///
此帖子包含附件: 大小:408.2K
----------------------------------------------
The higher the degree, the greater the respect given to the humblest!RAD 11.3
Better ask to xpert like IBExpert / IBPhoenix https://ibexpert.net/ibe/ https://www.ibphoenix.com/ (reference in support Firebird)
at general, the performance is very relative! if your hardware and logical infra-structure is a minimun-required, then, the Firebird can "speak" like an eloquent speaker at a congress of ideas!
Now, if you put him in a lecture where he needs to use a translator, then don't expect the meaning of the words to be exactly what you expect to hear from the speaker!
summary: the performance is very good if your infra-structure too!
Could you run Oracle on a 386 with 2MBytes of ram, and 100 concurrent users, and without experiencing any system stutters?
Don't want to compare a Relational Database with a Big-Data environment! But also don't look at the most current version as if it were still the first version of the software!
Much has passed and much has been overcome!
Note: performance is closely tied to the SQL code you use in Database-SQL.
----------------------------------------------
The higher the degree, the greater the respect given to the humblest!RAD 11.3
How to access Firebird / Interbase using LOCAL, REMOTE and EMBEDDED way? differences? by Emailx45
http://bbs.2ccc.com/topic.asp?topicid=633784
----------------------------------------------
The higher the degree, the greater the respect given to the humblest!RAD 11.3