Koozali.org: home of the SME Server
Legacy Forums => General Discussion (Legacy) => Topic started by: cgetty on February 10, 2006, 01:31:06 AM
-
(http://www.simpsons-crazy.co.uk/media/Pictures/nick.gif)Hi Everybody
On my old windozz web server I was running a few databases using Firebird.
I'm looking to move those databases over to my (new) SME server.
Anyone using Firebird with SME Server 7.Oprel1??
Any tips or trick that might help me get it going?
I diden't see any thing on it in the contribs forum for SME Server 7.Oprel1
Thanks
Clark
-
You just need to install the corresponding rpm. Something like FirebirdSS-1.5.3.4870.nptl.i686.rpm for Firebird 1.5.3. Note that you have to use the NPTL version.
I did some tests on SME7.0beta with fb1.5.3RC1 and fb2.0alpha2. Installation went fine.
-
My experiences:
glibc is not installed as standard by sme server but is required by Firebird. So BEFORE you install the Firebird rpm you MUST install glibc. You can do this from the Software installer pannel.
There seems to be 2 glibc's I isntalled glibc 2.3.4
If you do not do this then you cannot connect to any database and the error seems to be permissions based. Watch your Firebird install - at the end of the process it runs some gsec commands to set up your security database. If this does not run then you cannot connect. Without glibc gsec cannot run (because it needs the Firebird engine I think) so the security database is not set up correctly.
Look in /opt/firebird/SYSDBA.password and find the password for sysdba - on the line ISC_PASSWD=
To see if it works as expected fo to /opt/firebird/bin and issue the following:
./gsec -user sysdba -password sysdbapassword
If you see a GSEC prompt it is probably working. Enter DISPLAY and you should see SYSDBA as the user.
ymmv
Chris Laurie
-
Glibc is installed on SME. I think, the problem comes with libstdc++ and libgcc.
On SME 6.0, libstdc++-2.96-113 is installed but you need libstdc++-3.2-1 to run FireBird 1.5.0 to 1.5.2. You also need libgcc_s-3.2-1 which is not installed. I installed the corresponding rpm and I was able to run FireBird. I was not able to install FireBird 1.5.3 because they changed the computer used for building the rpm and it needs more recent libraries. Same for FireBird 2.0Alpha.
On SME 7.0, you will find libstdc++-3.4.4-2 and libgcc-3.4.4-2. But you still need older versions of the librairies. You will find it on CenOS4.2 repositories.
compat-libstdc++-33-3.2.3-47.3.i386.rpm (http://mirrors.ircam.fr/pub/CentOS/4.2/os/i386/CentOS/RPMS/compat-libstdc++-33-3.2.3-47.3.i386.rpm)
compat-gcc-32-3.2.3-47.3.i386.rpm (http://mirrors.ircam.fr/pub/CentOS/4.2/os/i386/CentOS/RPMS/compat-gcc-32-3.2.3-47.3.i386.rpm)
For dependancies, you will need also :
glibc-devel-2.3.4-2.13.i386.rpm (http://mirrors.ircam.fr/pub/CentOS/4.2/os/i386/CentOS/RPMS/glibc-devel-2.3.4-2.13.i386.rpm)
glibc-headers-2.3.4-2.13.i386.rpm (http://mirrors.ircam.fr/pub/CentOS/4.2/os/i386/CentOS/RPMS/glibc-headers-2.3.4-2.13.i386.rpm)
glibc-kernheaders-2.4-9.1.98.EL.i386.rpm (http://mirrors.ircam.fr/pub/CentOS/4.2/os/i386/CentOS/RPMS/glibc-kernheaders-2.4-9.1.98.EL.i386.rpm)
To avoid dependancies problems, you can use yum after enabling CentOS repositories.
Then, i tried to install FireBird 1.5.3 and 2.0Alpha. Installations went fine but I did not performed tests like using a database.
-
For dependancies, you will need also :
glibc-devel-2.3.4-2.13.i386.rpm (http://mirrors.ircam.fr/pub/CentOS/4.2/os/i386/CentOS/RPMS/glibc-devel-2.3.4-2.13.i386.rpm)
glibc-headers-2.3.4-2.13.i386.rpm (http://mirrors.ircam.fr/pub/CentOS/4.2/os/i386/CentOS/RPMS/glibc-headers-2.3.4-2.13.i386.rpm)
glibc-kernheaders-2.4-9.1.98.EL.i386.rpm (http://mirrors.ircam.fr/pub/CentOS/4.2/os/i386/CentOS/RPMS/glibc-kernheaders-2.4-9.1.98.EL.i386.rpm)
You should not need glibc-devel, glibc-headers and glibc-kernheaders if you are installing pre-built RPMs.
-
I did new tests. For the first question i.e. installing firebird, I indeed don't need compat-gcc.
I tried :
yum install compat-libstdc++-33
rpm -ivh FirebirdSS-1.5.3.4870.nptl.i686.rpm
or
rpm -ivh FirebirdSS-2.0.0.12484-ReleaseCandidate1.nptl.i686.rpm
Firebird installed and started fine.
I think, compat-gcc was necessary on SME6.0.
For the last question, when
yum --enablerepo=base install compat-gcc-32
The answer is
=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
compat-gcc-32 i386 3.2.3-47.3 base 3.0 M
Installing for dependencies:
glibc-devel i386 2.3.4-2.19 base 1.9 M
glibc-headers i386 2.3.4-2.19 base 579 k
glibc-kernheaders i386 2.4-9.1.98.EL base 693 k
Updating for dependencies:
glibc i686 2.3.4-2.19 base 5.0 M
glibc-common i386 2.3.4-2.19 base 16 M
So, I don't know why but it want glibc-devel, glibc-headers, and glibc-kernheaders.
But I can see an other problem. When I want to install a package from CentOS, yum want to update some packages comming with SME. This may not be very safe.
-
Once installed don't forget the symlink to get it to start automatically as detailed here:
http://forums.contribs.org/index.php?topic=21917.0
This worked for me (from command line in ssh):
ln -s /etc/rc.d/init.d/firebird /etc/rc.d/rc7.d/S96firebird
Also check that the database files (.fdb) have the right owners and permissions. This works for me:
owner/user = firebird/firebird and permissions 646