Sql-server – Setting up Oracle publishers in SQL Server replication

oracle-11g-r2replicationsql-server-2008-r2

I am attempting to set up and oracle publisher on a sql server 2008R2 server, but I am getting the following error.

"Unable to run SQL*PLUS. Make certain that a current version of the Oracle client code is installed at the distributor. For addition information, see SQL Server Error 21617 in Troubleshooting Oracle Publishers in SQL Server Books Online. (Microsoft SQL Server, Error:21617)"

The information I have found states that an oracle client must be installed and the oracle_home\bin must be in the path variable. I have verified that it is.

So far I have taken the following steps
Installed oracle administrator client
Added TNS_ADMIN env variable
Added ORACLE_HOME env variable
connected to the remote oracle database from the distributor via sql*plus

I am hoping someone will have run into similar errors in the past

Best Answer

Well after a call to microsoft I got the problem resolved. Turns out it was an easy fix, SQL Server had to be restarted. It looks like sql server was not picking up the updated path variable, so it wasn't finding the oracle binaries. Luckily, while a production server, I was able to schedule a quick restart to resolve the problem. After that sql was able to connect to the oracle database, for the rest I was able to follow microsoft's documentation pretty closely and get the replication working.

I wanted to make sure I update this, because I didn't see anything in the documentation saying sql had to be restarted after installing the oracle client, and hopefully it will be helpful to someone else.