We have a need to reset our TN Database Connection Pool to point to a new server without having to recycle the IS server. Is there any programmatic way we can dynamically change the JDBC connection string and rebuild the Connection Pool without recycling the IS server?
In IS Administrator, select JDBC Pools under the Settings heading in the menu on the left. Edit the appropriate Pool Alias definition. Restart the TN Functional Alias definition.
Thank you for the response. I should have been a little more clear about the “programmatic” side of my question. What we are up against is using Oracle’s Data Guard to manage database failover. Basically this means if the primary DB or even server fails the secondary instance would automatically come alive. We have a monitor that identifies the failover case and we would like to allow it to change the TN DB Pool JDBC connect string and force the pool to refresh and connect to the failover instance.
Do you know if there is any way, without user interaction, we can force a TN DB Pool to get updated JDBC Connection strings and refresh its pool of connections?
Thank you again for your time.
Are the connection strings changing on a fail-over? It would be better/easier if they didn’t.
As far as restarting the pool, review the .dsp of the pages I mention above to see what service is called when the restart button is clicked. You can then call the same service from your monitor.
We actually would rather not change them but a DNS change is not possible, hostname files are not possible and a virtual IP is also not possible. So we are hoping that something can accept a change in the connection string.
Thank you for the advice…I will look at the .dsp of the pages mentioned to see how that is accomplished…maybe I can pirate it.
what drivers are you using?
Virtual IP is the best solution, but since your requirement is limited, look for a driver which supports this feature!!!
I remember some drivers allow client connection strings to include alternate servers to be listed and tried if the primary fails.
Search wmusers or google on it. Let us know if you need more help in searching for it.
may be this link can equip you with additional information…
something like this…
“DSN=AcctOracleServer;
AlternateServers=(HostName=AccountOracleServer:PortNumber=1521:SID=Accounting,
HostName=255.201.11.24:PortNumber=1522:ServiceName=ABackup.NA.MyCompany);
ConnectionRetryCount=10;
ConnectionRetryDelay=10”
Thanks…this is a pretty good direction to go given our situation.
Thanks again!