October 30, 2009 at 4:01 pm
We recently setup database mirroring from one server to another, both version 2005. From time to time, in order to assure that the mirroring in place and ready we do manual failover between them. I noticed however that in some cases if an application call to database was sent within 10-15 seconds after failover, it returns with error "A transport error has occured..... (provider: TCP Provider, error: 0 - An existing connection was forcibly closed by the remote host.)". All consecutive connections go through well.
Does anybody experience this kind of problem ? Is there any solution for this, or this is just a flaw in mirroring ?
Thanks
October 30, 2009 at 6:29 pm
In mirror you application has to be "flexible" enough to "change" to connection string to the new server, or have an alias to the database and change that alias to the new server.
Unlike cluster, the apps can't use the same connection string without having been made some changes: to the connection string or server alias like I mentioned before.
Your application, probably, is connected all the time to the database, since it starts till it ends.
The error you got is very common when a connection is established to a server, the server shuts down and then starts again but the previous connection has been lost.
You can "simulate" this by connection to the server in Management Studio, make a query in any database, disconnect your network connection (disable the network adapter), enable again the connection and execute the same query. An identical error will be raised by SQL Server. Execute again and it will work the 2nd time. Sometimes, don't know if it's a config of Management Studio or not, it asks for the connection credentials again.
Pedro
Viewing 2 posts - 1 through 1 (of 1 total)
You must be logged in to reply to this topic. Login to reply