Cannot create an instance of OLE DB provider "OraOLEDB.Oracle" for lin

In the SQL SERVER 2008 R2 using Windows authentication login name to create a ORACLE database access the linked server xxxxx, the test is successful, the wood has a problem, but other login using the linked server, reported the following error:

Message 7302, level 16, state 1, line first

Cannot create an instance of OLE DB provider "OraOLEDB.Oracle" for linked server "xxxxxx".

In the server object ” “ — — > “ — link server ” — > “ &rdquo interface; next, find the OraOLEDB.Oracle option, right click and select properties, then check the &ldquo in the interface options allow the process;”(Allow inprocess). To solve the above problem, sometimes, may need to re create the linked server.


The foreigner gives a solution to this problem is quite detailed steps, rigorous, almost everything. Good information can be used as reference for learning:

Ran into this issue where the linked server would work for users who were local admins on the server, but not for anyone else. After many hours of messing around, I managed to fix the problem using the following steps:

1: Run “dcomcnfg.exe”. Navigate to “Component Services -> Computers -> My Computer -> DCOM Config”.

2: Open the properties page of “MSDAINITIALIZE”.

3: Copy the “Application ID” on the properties page.

4: Close out of “dcomcnfg”.

5: Run “regedit”. Navigate to “HKEY_CLASSES_ROOT\AppID\{???}” with the ??? representing the application ID you copied in step #3.

6: Right click the “{???}” folder and select “Permissions”

7: Add the local administrators group to the permissions, grant them full control.

8: Close out of “regedit”.

9: Reboot the server.

10: Run “dcomconfig”. Navigate to “Component Services -> Computers -> My Computer -> DCOM Config”.

11: Open the properties page of “MSDAINITIALIZE”.

12: On the “Security” tab, select “Customize” under “Launch and Activation Permissions”, then click the “Edit” button.

13: Add “Authenticated Users” and grant them all 4 launch and activation permissions.

14: Close out of “dcomcnfg”.

15: Find the Oracle install root directory. “E:\Oracle” in my case.

16: Edit the security properties of the Oracle root directory. Add “Authenticated Users” and grant them “Read & Execute”, “List folder contents” and “Read” permissions. Apply the new permissions.

17: Click the “Advanced Permissions” button, then click “Change Permissions”. Select “Replace all child object permissions with inheritable permissions from this object”. Apply the new permissions.

18: Find the “OraOLEDB.Oracle” provider in SQL Server. Make sure the “Allow Inprocess” parameter is checked.

19: Reboot the server.

Posted by Judith at November 21, 2013 - 5:12 PM