What is Firebird?
Firebird is a powerful, open-source relational database system, with high performance and extensive support for powerful SQL features with close adherence to the SQL standards. Whether you’re developing a small program or a large enterprise information system, Firebird is the database for you. Take a look at the Case Studies to get an impression of other people using Firebird.
For more information on Firebird and its features, go to the About Firebird section.
Downloading and Installing
Firebird is available for a large number of platforms, including Windows, Linux and MacOS X. You can get the installer for your platform at the download area of this site. Firebird is also available in the package manager of many Linux distributions.
Firebird comes in a number of flavors: Classic, SuperClassic and SuperServer. If you are unsure which version to download or install, make sure you consult ‘Firebird 2.5 Quick Start Guide: Classic, SuperClassic or Superserver?‘. For the installation itself, the ‘Firebird 2.5 Quick Start Guide: Installing Firebird‘ provides a good starting point.
You may find the basic information describing the key points of Firebird in the ‘Get to Know Firebird in 2 minutes‘ and ‘Firebird Facts‘ white papers. It’s also worth looking at the ‘Firebird in the Enterprise‘ white paper.
For a more detailed information, the ‘Firebird 2.5 Quick Start Guide‘ is a good introduction to the configuration and management of Firebird, administration of users and database, and connecting and using databases. More in-depth documentation and reference manuals on Firebird are available from the documentation section.
Firebird comes with a number of powerful command-line tools to administer the database, but does not include a GUI interface. Fortunately, third-party GUI administration tools are available.
Classic, SuperClassic or Superserver?
Firebird servers come in two flavours, called architectures: Classic Server and Superserver. Since Firebird 2.5,
Classic Server can operate in two modes: “traditional” Classic and SuperClassic, giving a total of 3 models.
Which one should you choose? The most important differences are listed below. In the vast majority of cases,
all three models perform equally well and offer (almost) the same possibilities.
Classic uses a separate process for each connection; SuperClassic and Superserver use a single process.
Thus, if a Classic server process crashes, the other connections remain unaffected. With SuperClassic and
Superserver, a crash take down all the connections.
Superserver can run under the control of the Firebird Guardian, which automatically restarts it in case of a
crash. SuperClassic only offers the Guardian option under Linux. Classic doesn’t offer it at all.
Being single-process, SuperClassic and Superserver use system resources more efficiently than Classic if
the number of simultaneous connections grows. Superserver is the most efficient of the three, because it also
has a shared cache space.
Classic and SuperClassic offer an “embedded” local connection mode on Linux which is very fast, but not
as secure as a regular network connection. On Windows, a separate Embedded Serveris available which is
even less secure, but can be very practical if you want to ship Firebird with your applications.
Only Classic and SuperClassic allow simultaneous connections to a database from the regular server and
one or more embedded servers. Thus, if you use the Windows Embedded Server, it may be advantageous
to have Classic or SuperClassic as your regular server.
On Windows, Superserver defaults to using only the first processor or core in your computer. To make it use all the available CPU power, the CpuAffinityMaskparameter in firebird.confmust be edited. All other servers (including Superserver for Linux) support multiprocessing out of the box and ignore Cpu AffinityMask.