Subject | RE: [firebird-support] Multiple FB 2.0 servers and silent installs... |
---|---|
Author | Jarrod Hollingworth |
Post date | 2007-01-29T10:58:04Z |
Hi Greg,
The ideal solution is to run the multiple firebird servers as Windows
services. Unfortunately this is not fully supported "in the box" with
Firebird 1.5 or 2.0 for two reasons:
1) There is no way to install two separate firebird services.
2) Even if you could do 1) there is no effective way to tell a second
service to use a separate root path (and hence configuration file and alias
file etc.)
What is required is:
- Use a different instsvc tool that allows you to specify the service name
and description to use. This lets you have two FB server services.
- Modify the firebird server to read its root path in a different way (such
as adding a command line parameter for the root path or the instance name to
look up in the registry to get the root path).
A long time ago I did exactly the above for FB 1.5. I wrote my own service
installer (I couldn't find one that provided the necessary functionality)
and modified the FB source to add an "instance name" command line parameter.
In my installer I install the FB service using a different service name, add
a separate FB instance registry key which specifies the root path, and ship
a modified configuration file which sets the TCP port and other options
necessary to support multiple FB instances.
It works beautifully and allows my app to silently install a separate FB
service instance that can co-exist with any other FB installed before or
after my app.
I have the modified FB binary but the source code is buried in my backups. I
plan to get it working in FB 2 one day and possibly add the necessary
service installer code to the existing instsvc tool rather than use my
separate service installer and make the code changes available or submit
them for inclusion in the FB code base.
If you're brave you can use the same method above and make the changes
yourself. My change was a quick hack but I'm sure there's an elegant
solution.
Regards,
Jarrod Hollingworth
* Are your projects profitable?
* Are you billing your customers accurately?
* Where do you or your staff spend their time?
### Complete Time Tracking ###
### EASY, ACCURATE and FLEXIBLE time tracking ###
### for single or multiple users. ###
### http://www.complete-time-tracking.com ###
* Buy Now * Risk free with our 30-day money-back guarantee.
* Download * Try it fully functional for 30 days.
The ideal solution is to run the multiple firebird servers as Windows
services. Unfortunately this is not fully supported "in the box" with
Firebird 1.5 or 2.0 for two reasons:
1) There is no way to install two separate firebird services.
2) Even if you could do 1) there is no effective way to tell a second
service to use a separate root path (and hence configuration file and alias
file etc.)
What is required is:
- Use a different instsvc tool that allows you to specify the service name
and description to use. This lets you have two FB server services.
- Modify the firebird server to read its root path in a different way (such
as adding a command line parameter for the root path or the instance name to
look up in the registry to get the root path).
A long time ago I did exactly the above for FB 1.5. I wrote my own service
installer (I couldn't find one that provided the necessary functionality)
and modified the FB source to add an "instance name" command line parameter.
In my installer I install the FB service using a different service name, add
a separate FB instance registry key which specifies the root path, and ship
a modified configuration file which sets the TCP port and other options
necessary to support multiple FB instances.
It works beautifully and allows my app to silently install a separate FB
service instance that can co-exist with any other FB installed before or
after my app.
I have the modified FB binary but the source code is buried in my backups. I
plan to get it working in FB 2 one day and possibly add the necessary
service installer code to the existing instsvc tool rather than use my
separate service installer and make the code changes available or submit
them for inclusion in the FB code base.
If you're brave you can use the same method above and make the changes
yourself. My change was a quick hack but I'm sure there's an elegant
solution.
Regards,
Jarrod Hollingworth
* Are your projects profitable?
* Are you billing your customers accurately?
* Where do you or your staff spend their time?
### Complete Time Tracking ###
### EASY, ACCURATE and FLEXIBLE time tracking ###
### for single or multiple users. ###
### http://www.complete-time-tracking.com ###
* Buy Now * Risk free with our 30-day money-back guarantee.
* Download * Try it fully functional for 30 days.