Thanks to @Oracle there's a whole rigmarole where you have to register for a login, blah, blah, blah, boo
At this point it's probably a good idea to make sure your Oracle DBAs have assigned you a User /Schema and a password. You may also want to setup your tnsnames.ora file (or just make a copy of a working one), more on the tnsnames.ora file later.
OK, so now you've sawed off your right arm and provided it to Oracle for the privilege of downloading their client. Unzip the win64_11gR2_client.zip file and drill down to ..\Oracle11g_Client\win64_11gR2_client\client\ and launch setup.exe. I'm running SQL Server 2012 on Windows Server 2012 R2 and I get this annoying "Oracle Client Installer" error message because it doesn't seem to recognize current software.
You can safely ignore this error message, by clicking "Yes"
Next you'll be prompted with "What type of installation do you want?"
More installation type details are here: https://docs.oracle.com/cd/B28359_01/install.111/b32003/install_overview.htm
I chose Administrator because it, "also provides tools that enable you to administer Oracle Database."
Click Next and Finish to have the installer do its thing.
Once the installer is done, the next thing to do is setup that tnsnames.ora file. If your Oracle DBA handed you a file simply copy it to C:\app\product\11.2.0\client_1\network\admin.
If you need to make one from scratch, there's some basics here:
There are plenty of other options besides those basics. You can dig in here to Load Balancing and the like if you're so inclined:
Now that we have the client installed and our tnsnames file configured, we need to setup our ODBC data source. Start this process by launching ODBC Data Sources:
Now would be a good time to restart. Unfortunately, yes you need to restart...
You can do an additional test via sqlplus. Open a windows command prompt and enter the following:
sqlplus user/pass@[addressname](Where addressname is one of your connections from tnsnames.ora)
Next we need to setup our linked server. Pop open SQL Server Management Studio (SSMS) and drill down to "Server Objects" > "Linked Servers", right-click and choose "New Linked Server"
Change the Provider to "Oracle Provider for OLE DB". Enter a product name of Oracle. For the "Data Source" enter your [addressname] from the tnsnames.ora file.
One final test would be to attempt an OPENQUERY:
Select * from openquery(NAME, 'SELECT * FROM [WHEREVER]') ALIAS