Home » Server Options » RAC & Failsafe » ORACLE Server Failover Parameters in Windows Server machine.config file (11g)
ORACLE Server Failover Parameters in Windows Server machine.config file [message #539680] Tue, 17 January 2012 17:02 Go to next message
pklocke
Messages: 4
Registered: January 2012
Location: Boise, ID
Junior Member
Guys: I am quite a noob, working on setting up connection between a Windows 2008 server and a pair of Oracle 11g DBs in a RAC Cluster. One Database (let's say DatabaseA) is in one data center, and the other (DatabaseB) is an a secondary, backup database. The RAC Cluster is all set up, working fine, etc. However, I Need to set up the machine.config file on my Windows Server, to go only connect to DatabaseA, unless it fails, in which case, we want it to connect to DatabaseB. Think we could do this if the host app server was Linux/Unix, but it is windows, and I just don't have the background as to the parameters to set up in the machine.config file. They are similar, but different, and we want a very specific behavior (use DatabaseA, unless fails, then DatabaseB). Application is .NET 4.0 app.

I am probably not even presenting this question right, but hope someone get's the gist of this. Pointers to any resources, particularly examples, would be superbly appreciated.

Thx!

pklocke

[Updated on: Tue, 17 January 2012 17:02]

Report message to a moderator

Re: ORACLE Server Failover Parameters in Windows Server machine.config file [message #539693 is a reply to message #539680] Wed, 18 January 2012 01:34 Go to previous messageGo to next message
John Watson
Messages: 8922
Registered: January 2010
Location: Global Village
Senior Member
Welcome to the forum - I hope you will both learn and contribute. Please read our OraFAQ Forum Guide and How to use [code] tags and make your code easier to read
One question about your question: if I read it correctly, your have a RAC cluster running DatabaseA in one data centre, and another RAC cluster running DatabaseB in another data centre. How are you keeping the two databases synchronized?
Re: ORACLE Server Failover Parameters in Windows Server machine.config file [message #539781] Wed, 18 January 2012 09:23 Go to previous messageGo to next message
pklocke
Messages: 4
Registered: January 2012
Location: Boise, ID
Junior Member
Hi, John...thanks for the welcome.

So, regarding keeping the databases in sync...I have to go a little on faith there. By this I mean my background is in the code development side. We "request" a database to be created, in multiple data centers, with the required sycnchronization, replication, etc. To me, it's a little bit of voodoo how that works between our DBA team, and our UNIX team, but it really does. In fact, my post is due to fact they have just delivered our DB. We have initialized it and migrated data to it. Now, we need to actually test that failover capability, to verify that it does what the experts say it will do.

That's where the machine.config set up comes in. If we don't configure that for failover, we won't be able to execute the tests to validate it actually works.

Hope that makes some sort of sense?

[Updated on: Wed, 18 January 2012 09:24]

Report message to a moderator

Re: ORACLE Server Failover Parameters in Windows Server machine.config file [message #539783 is a reply to message #539781] Wed, 18 January 2012 09:38 Go to previous messageGo to next message
John Watson
Messages: 8922
Registered: January 2010
Location: Global Village
Senior Member
You need to get an answer to my question.
If the two databases at the two sites are synchronized through Data Guard, then failover can be automated purely within the Oracle environment, with a guarantee of zero data loss and minimal (a few minutes, perhaps) downtime. The mechanism is platform independent, and you will not have to do anything at the OS level: it is all done with Oracle Net. Your application software need know nothing about it.
If the synchronization is being done by some third party technique, I have no idea.
Re: ORACLE Server Failover Parameters in Windows Server machine.config file [message #539786 is a reply to message #539783] Wed, 18 January 2012 09:55 Go to previous messageGo to next message
pklocke
Messages: 4
Registered: January 2012
Location: Boise, ID
Junior Member
Yes....believe our UNIX folks call it Service Guard, or some such, but that may be the unix failover. Perhaps dataguard is what is being used, under the hood.

But, in our case, how does our application find the failover front end server? Our current machine.config file points at the server in DataCenterA. It connects nicely, and our application accesses it quite nicely, because it is pointed directly at the server via the machine.config file.

In a TNSNames file set up, we set up both servers, and the application normally takes care of it (say, TOAD for instance), because it knows about both servers in both DataCenters.

But in the case of a machine.config file...we have only one front enter UNIX server configured, and are unsure how to add the second one (so it our .net app hits one, and if it is not there, it automatically goes to the other). Both servers need to be noted in the machine.config file, but we are unsure of the parameters to put there. Here is what the connection strings look like in the file:

<connectionStrings>

<add name="ConnectionStringGN" connectionString="DATA SOURCE=(DESCRIPTION =(LOAD_BALANCE=no)(FAILOVER=ON)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST = serverDCa.myco.com)(PORT = 1526))(ADDRESS=(PROTOCOL=TCP)(HOST = serverDCb.myco.com)(PORT = 1526)))(CONNECT_DATA =(SERVICE_NAME = MYAPPP)));USER ID=PRD_APP_GLOBAL;PASSWORD=xxxxxxxxxxx;PERSIST SECURITY INFO=True" providerName="Oracle.DataAccess.Client"/>


So we will be testing this setup, but we are not sure it is right, so thought I would ask smarter people than I. I am calling serverDCa the UNIX system in data center A, and similar for the host in data center b.
Re: ORACLE Server Failover Parameters in Windows Server machine.config file [message #539789 is a reply to message #539786] Wed, 18 January 2012 10:06 Go to previous messageGo to next message
John Watson
Messages: 8922
Registered: January 2010
Location: Global Village
Senior Member
Your connectionString already has Oracle Net configured for failover: it has both addresses, and your Oracle client(s) will try the first and then the second. It isn't the application (TOAD, for example, if you insist on using it) that does the failover, it is done beneath the application by Oracle Net. Provided that Data Guard (not Service Guard, which I think is an HP clustering facility that is not relevant) has been set up to automate the transmission of change vectors between the databases and the activation of the standby, you need do nothing.
btw, it doesn't look as though you are using RAC.
Re: ORACLE Server Failover Parameters in Windows Server machine.config file [message #539791 is a reply to message #539789] Wed, 18 January 2012 10:14 Go to previous message
pklocke
Messages: 4
Registered: January 2012
Location: Boise, ID
Junior Member
OH...gosh..I was not suggestion toad was doign the failover. I was attempting to say a TNSNames type config file is different from a machine.config format (ie, a TNS file like one might use in TOAD, or on a unix/linux system). Sorry for confusion.

Not sure about the RAC question. But something triggered that. Is there a parameter missing that you would expect that leads you that direction? Or something else I may have stated (and possibly, erroneously).

I guess my key question is: does the machine.config file look like what one might expect, given what I am trying to do?

Thx for all help!

PK
Previous Topic: Oracle FailSafe & Vmwear
Next Topic: Expdp/Impdp performs slow in RAC oracle11gR2
Goto Forum:
  


Current Time: Fri Mar 29 08:14:31 CDT 2024