August 2nd, 2011, 05:23 AM
Multiple Firebird instances seem to use just one Aliases.conf
this is my first post in this forum, I think many will follow.
So I use multiple Firebird instances on Windows with FB 2.5
-the first instance is a standard installation
-the second instance is a not registered installation
I want the second Instance to be totally uninfluenced of any other FB instances & vice versa.
That seems to be the case, except of the aliases.conf !
If I use GSEC.exe or ISQL.EXE everything is fine and the aliases work...
But if i use the anydac abstarction layer + fbclient.dll the aliases refuse to work.
yet I can make them work, if I add them into the global aliases.conf that lies in the path of the first instance of FB created in the registry.
So wich entity is responsible for using the aliases.conf?
How can I get the aliases.conf that is in the directory of the second FB instance to be used?
I allready tried to setup the RootDirectory in firebird.conf, but no success here.
August 3rd, 2011, 01:46 AM
Are the both instances running from the same directory? I.e you don't have two separated installation directories for each FB?
Because I'm running two Firebird servers 2.1 on one PC with different aliaces.conf, firebord.conf etc. for each one.
But I have two directories - the "original" Firebird 2.1 and another directory called Firebird 2.1_2 with all files and subdirectories from the original installation. And I'm starting the first instance from the first directory and the second one from the second directory. And they are working just fine. The only difference between the two installations is that I've changed the port that one of them is using from 3050 to 3051.
Last edited by mIRCata; August 3rd, 2011 at 01:48 AM.
August 3rd, 2011, 05:32 AM
They have different directories!
Originally Posted by mIRCata
(It is fb 2_5 here)
I installed the first instance via the installer...
and the second via a self programed installer.
We don't want our programm to influence others peoples Applications...so I hope it is possible to run both services(with -name parameter)
Without touching system variables or registry paths of other vendors that use IB or FB. (Avira, delphi &c.)
I just changed the rootdirectory and the Serviceport in firebird.conf...
and added aliases in the aliases.conf....
too bad, it seems that the aliases only work if i add them in the
FB Systembpath's Aliases.conf
August 3rd, 2011, 09:43 AM
In Firebird's doc directory there is a file install_windows_manually.txt I've used the commands written in it to start the second server.
This is what I've did
1. I've copied Firebird_2_1 directory.
2. I've Changed the firebird.conf in the second directory to use port 3051.
3. I've added the aliases in the aliases.conf file for the databases that I wanted to use the second server
4. From command prompt I went in bin directory in the second firebird directory and from there I've used these commands:
instsvc install -auto -superserver -guardian -name Firebird_2_1_2
instsvc start -name Firevird_2_1_2
And now I have 2 firebird services, running from different directories, on different ports, having separated guardian services and working with different database files.
I didn't change any registry, system variables etc.
And I think that it's the same with version 2.5.
Also there is a note in this file
Last edited by mIRCata; August 5th, 2011 at 06:10 AM.
August 6th, 2011, 12:19 PM
I did it like wise...
One of the Firebirdserver is not installed by our software..but by let's say the company's Admin...runnung his software ....
It already is registered with System Paths and Registrykeys...and it relies on them.
I could change the setup that installs our Firebird in a way that it clears all systempaths and registrykeys from previous Firebird installations and there by rendering als software of other vendors useless or at leastset them out of function.
Some customers might not like this.
August 8th, 2011, 04:45 AM
You can try not to do normal Firebird installation. You can add a copy of the firebird's directory in your installer as subdirectory of your software and register your service from that subdirectory as is written in that txt file.
August 8th, 2011, 01:42 PM
Sounds like the only way...
Originally Posted by mIRCata
Install our FB in our softwares subdirecory...and using the global Aliases.conf adding our databases...
And every time the vendor that ships the first FB installation on the computer destroys the configuration of the Aliases.conf or the registry or system path...we have to repair the configuration at the customers computer.
...that is like the BDE+Paradox times we want to overcome...
Everytime Selectline or Lexware did Updates they killed the entire BDE and reinstall it with their paths, language driver settings, &c. , only!
August 9th, 2011, 02:13 AM
Don't make new Firebird installation. Just create a mirror of the Firebird's directory in your installer, put this mirror directory as subdirecotry in your directory and use %you_directory%/%firebird%/bin/instsvc to register new Firebird service. This new service will use the conf file in %you_directory%/%firebird%/
and the aliases.conf in the same directory. It won't use the global aliases.
August 9th, 2011, 08:57 AM
thats already what i do
but it uses the global Aliases.conf.
Could be an anydac problem? Beacause ISQL works perfekt.