Showing posts with label cluster. Show all posts
Showing posts with label cluster. Show all posts

Friday, March 30, 2012

ODBC DSN on Cluster Server

Is MDAC cluster-aware?

I have an active/passive MS Cluster server.

ODBC DSN changes on the virtual cluster server are not propagated to the passive node.

How do I configure ODBC DSN such that they are propagated to both nodes in an active/passive cluster?

tia

Please note that MDAC is client driver while virtual cluster server is the server. Your ODBC DSN configuration is for the client, not for the server. The DSN will be used by the client to collect server information. So, what you need to do is to configure DSN in all client machines and the server name in the DSN shoule be the name of the SQL Server Virtual Server.

Or in short, MDAC itself is not cluster-aware.

|||

For clarification,

these ODBC DSNs I am referring to, are created on the SQL Server machine. They are used for Linked Servers within SQL Server.

So, my question is, since ODBC DSNs cannot be specified as Cluster resources how do I ensure that all DSN changes are effected on both active/passive nodes in the cluster?

|||As I said, you have to create same DSNs on both active/passive nodes.sql

Monday, March 26, 2012

ODBC Data Source On Clustered SQL Server

We created an ODBC datasource on a SQL Server in the cluster. Then there was
a hardware failover and subsequently unrelated DTS processes failed because
the data source wasn't defined on the failover machine. Even though those
processes did not use the ODBC source, in fact nothing used the ODBC source,
it was just created to be used in testing.
So, how do you create an ODBC datasouce that will be cluster-wide and not
just machine specific? Do you have to do it through the Cluster Management
console?
Thanks,
Bob
ODBC DSN's are not services and not applications; they are specifications,
typically stored in the registry. If you need it, just like mapped
networked drives, then you will need to create them separately on each
cluster node that requires them. There is no way to cluster them.
However, if you switched to using Data Links or ODBC file-based DSNs, then
you could store them on one of the shared clustered drives. In this case,
they would failover with the group, retain the same drive letter and path;
so, they would always be present with the virtual server.
On to another topic. Although we allow retaining the DTS package in the
MSDB repository and logging to that package, we do not allow the execution
of DTSRun on the DBMS servers. We require our clients to execute those on
an Application Server.
We try to minimize the number of external processes that run alongside the
DBMS memory space in order to maximize performance and system stability.
The last thing we want is for an external process to foul connected to an
internal SQL Server thread.
Sincerely,
Anthony Thomas

"Bob C" <BobC@.discussions.microsoft.com> wrote in message
news:65CC8979-C05A-43A9-92D6-9B156958E8CD@.microsoft.com...
> We created an ODBC datasource on a SQL Server in the cluster. Then there
was
> a hardware failover and subsequently unrelated DTS processes failed
because
> the data source wasn't defined on the failover machine. Even though those
> processes did not use the ODBC source, in fact nothing used the ODBC
source,
> it was just created to be used in testing.
> So, how do you create an ODBC datasouce that will be cluster-wide and not
> just machine specific? Do you have to do it through the Cluster Management
> console?
> Thanks,
> Bob

Wednesday, March 21, 2012

ODBC Connection Fails from cluster node

I had a stand alone sql server that I upgraded to a cluster. I have an odbc connection called my_connection. The odbc test works fine. When I call the dsn from a php script it fails with this message:

Warning: odbc_connect(): SQL error: [Microsoft][ODBC SQL Server Driver][DBNETLIB
]SQL Server does not exist or access denied., SQL state 08001 in SQLConnect in D
:\storage\test.php on line 3
Could not connect to my_connection!

This same script works fine from any other computer. Is there an issue with connecting to a virtual server from the node via ODBC? Is there something I need to change in the client protocols?

Thanks in advance.

What's your connection string? The server name must have been changed (from the machine name to cluster network name resource name). Have you changed it in your conn string? Is it a default instance and named instance?|||

I also like to add that when I run Component Checker 2.0 I get

The following product releases were matched:

UNKNOWN

I'm wondering if this is the culprit.

|||

Its a system dsn, with SQL Server driver. The server is my virtual server name, and it uses sql authentication.

Does that answer your question? My odbc connection by itself works fine, but it doesn't when called from another app.

|||hmm, If you are able to connect when you test the DSN but fails in your app, I'm not sure what I can do. There are probably some issue with your app. I hope you test your app and DSN under same account.|||

This issue appears to be MDAC. Uninstalling and reinstalling SQL to enable clustering must have caused the problem.

What I did to figure this out was change the connection from dsn to dsn-less and it worked.