Installing the Firebird Database Server on CentOS 7
-
Firebird is a mature, well known relational database server. It comes in the CentOS and RHEL EPEL and can be installed and run easily. We will assume a minimal CentOS 7 installation (from the 1611 media, with firewalld installed by default) for this project.
First we need to install the EPEL:
yum -y install epel-release
Now that we have the EPEL set up, all we need to do is:
yum -y install firebird
That is all that we need for installation. But the server is not running yet:
chown -R firebird:firebird /tmp/firebird systemctl start firebird-superserver systemctl enable firebird-superserver
Those commands will start our new database server and will set it to start automatically on system boot as a service. It is important to note that the server's full name on CentOS is firebird-superserver.
Since we have a firewall in place, we will want to open the ports for our new database server. Firebird uses port 3050. If you only plan to use Firebird locally, do not open this port on the firewall. But if you are building a dedicated database server and need external connections, then you will need to open it.
firewall-cmd --zone=public --add-port=3050/tcp --permanent firewall-cmd --reload
That's it. Our database is installed, running, open for external connections and ready for use. And because Firebird is included with the EPEL, all patches and updates are handled automatically with your normal yum updates. Enjoy!
[Edit: Later in 2017 after this post was made, the EPEL package of Firebird was broken and can no longer be used. Also, Firebird 2 and CentOS 7 are not current and should not be being installed today regardless. Look at CentOS 8 or Fedora for a current OS today, and Firebird 3. Install from Firebird's own packages.]
-
If we have netstat installed, we can see the server listening:
# netstat -tulpn | grep 3050 tcp 0 0 0.0.0.0:3050 0.0.0.0:* LISTEN 13898/fbserver
Good to note that the process name is fbserver.
-
Hi, thank you very much for this post. I need some help. Using CentOS 7 64 bits, installs firebird-superserver.x86_64 0:2.5.7.27050.0-1.el7 ok, but does not work.
gsec -user SYSDBA -password masterkey -modify sysdba -pw newpassword
returns:
Unable to complete network request to host "localhost".
Failed to establish a connection.
unable to open databaseCan you help me? Please
-
I'm sure you've checked this but just in case it was missed.... are you sure that the process is running.
I think it is....
systemctl status firebird-superserver
-
Thank you for quick answer.
Response:
systemctl status firebird-superserver
● firebird-superserver.service - Firebird Database Server ( SuperServer )
Loaded: loaded (/usr/lib/systemd/system/firebird-superserver.service; enabled; vendor preset: disabled)
Active: inactive (dead)Jul 16 22:36:44 localhost.localdomain systemd[1]: Starting Firebird Database Server ( SuperServer )...
Jul 16 22:36:44 localhost.localdomain systemd[1]: firebird-superserver.service: Supervising process 3678 which is not our child. We'll most likely not notice when it exits.
Jul 16 22:36:44 localhost.localdomain systemd[1]: Started Firebird Database Server ( SuperServer ).cat /etc/centos-release
CentOS Linux release 7.3.1611 (Core)However, doing same on CentOS release 6.9 (Final), works all very good!
Maybe it is something related to:
http://tracker.firebirdsql.org/browse/CORE-5491?page=com.atlassian.jira.plugin.system.issuetabpanels%3Aall-tabpanel -
Mark this: on CentOS release 6.9 (Final), it reports installation:
installed:
firebrid.x86_64 0:2.5.5.26952.0-2.el6Dependency Installed:
firebird-classic-common.x86_64 0:2.5.5.26952.0-2.el6
firebird-filesystem.x86_64 0:2.5.5.26952.0-2.el6
firebird-libfbclient.x86_64 0:2.5.5.26952.0-2.el6
firebird-libfbembed.x86_64 0:2.5.5.26952.0-2.el6
firebird-superclassic.x86_64 0:2.5.5.26952.0-2.el6
libicu.x86_64 0:4.2.1-14.el6 -
On CentOS 7.3.1611 (Core) installation reports:
Dependencies Resolved
Package Arch Version Repository SizeInstalling:
firebird x86_64 2.5.7.27050.0-1.el7 epel 648 k
Installing for dependencies:
firebird-superserver x86_64 2.5.7.27050.0-1.el7 epel 2.7 MTransaction Summary
Install 1 Package (+1 Dependent package)
Total download size: 3.4 M
Installed size: 14 M
Is this ok [y/d/N]: y
Downloading packages:
(1/2): firebird-2.5.7.27050.0-1.el7.x86_64.rpm | 648 kB 00:00:03
(2/2): firebird-superserver-2.5.7.27050.0-1.el7.x86_64.rpm | 2.7 MB 00:00:49Total 70 kB/s | 3.4 MB 00:00:49
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : firebird-superserver-2.5.7.27050.0-1.el7.x86_64 1/2
firebird983:
Installing : firebird-2.5.7.27050.0-1.el7.x86_64 2/2
Verifying : firebird-2.5.7.27050.0-1.el7.x86_64 1/2
Verifying : firebird-superserver-2.5.7.27050.0-1.el7.x86_64 2/2Installed:
firebird.x86_64 0:2.5.7.27050.0-1.el7Dependency Installed:
firebird-superserver.x86_64 0:2.5.7.27050.0-1.el7Complete!
-
-
@scottalanmiller Is there any web apps that works with firebird?
-
@scottalanmiller do you know if it is possible (and how) to install firebird 2.5.7
classic / superclassic con CentoOS 7 ? -
@black3dynamite said in Installing the Firebird Database Server on CentOS 7:
@scottalanmiller Is there any web apps that works with firebird?
There are, but primarily it is for bespoke projects.
-
Do the Firebird logs tell you anything? Do a restart on the service and see what the logs say immediately afterwards.
-
@scottalanmiller sorry, where can I check firebird logs?
-
I've build a new server and just did an install. Definitely looks like things have changed recently. I'm getting the same issues.
-
@scottalanmiller it is good to hear that, I thought I was wrong. Now, please look at the log file: it says Can't access lock files's directory /tmp/firebird/
It seems firebird user has no access to that folder.
Let me test something, allowing firebird user to access it.
-
Solved:
sudo chown -R firebird:firebird /tmp/firebirdThank you very much for your help and guide.
-
@abnerh69 said in Installing the Firebird Database Server on CentOS 7:
Solved:
sudo chown -R firebird:firebird /tmp/firebirdThank you very much for your help and guide.
Oh awesome, glad that it was not anything crazy. I'll add that to the install instructions up top. That was definitely not needed previously.
-
@black3dynamite, do you need some specific help? I mean, I do web apps that works with firebird.
-
@abnerh69 said in Installing the Firebird Database Server on CentOS 7:
@black3dynamite, do you need some specific help? I mean, I do web apps that works with firebird.
No. I was just curious about it.
-
chown -R firebird:firebird /tmp/firebird
This command doesnt work.
Because there is no "firebird" directory in /tmp folder