Data Replication 2
Results 1 to 2 of 2

Thread: Linked Servers: Cannot create an instance of OLE DB provider "AttunityConnect"

  1. #1
    Adeeb Mass'ad is offline Support Manager
    Join Date
    Aug 2006
    Location
    Jaffa of Nazareth
    Posts
    169
    Rep Power
    14

    Linked Servers: Cannot create an instance of OLE DB provider "AttunityConnect"

    DESCRIPTION

    This is a common scenario which cases this error, where the user is working with Linked Servers and logging to SQLServer using Windows Authentication.

    For example:
    - The MSSQLServer service is started as "Local System".
    - The users are logging from a different machines using "Windows Authentication".
    The user would get the following error on the Client machine:
    Msg 7302, Level 16, State 1, Line 1
    Cannot create an instance of OLE DB provider "AttunityConnect" for linked server "LNAME".
    On the Server machine where Attunity and SQLServer Linked Server are deployed you will get the following errors in the Event Viewer:
    Application
    The OLE DB initialization service failed to load. Reinstall Microsoft Data Access Components. If the problem persists, contact product support for the OLEDB provider.
    System
    (1) The machine-default permission settings do not grant Local Activation permission for the COM Server application with CLSID
    {2206CDB0-19C1-11D1-89E0-00C04FD7A829}
    to the user mydomain\user01 SID (S-1-5-21-3780661438-352594265-2803996847-5035). This security permission can be modified using the Component Services administrative tool.

    (2) The machine-default permission settings do not grant Local Activation permission for the COM Server application with CLSID
    {3AEBB9CB-7359-11D4-AFBE-00D0B7805760}
    to the user mydomain\user01 SID (S-1-5-21-3780661438-352594265-2803996847-5035). This security permission can be modified using the Component Services administrative tool.
    SOLUTION

    The first GUID {2206CDB0-19C1-11D1-89E0-00C04FD7A829} is the MSDAINITIALIZE, a COM class that is provided by OLE DB. This class can parse OLE DB connection strings and load/initialize the provider based on property values in the connection string.

    The user mydomain\user01 does not have permissions to remotely activiate this COM class, and the second error shows it failed to activate the Attunity Connect OLE Provider which is the second GUID
    {3AEBB9CB-7359-11D4-AFBE-00D0B7805760}.

    An immediate solution would be to add the mydomain\user01 to the local Administrators group which by default have permissions to activate the
    MSDAINITIALIZE component.

    Since this is not always possible there is a simple solution:
    1. Create a new Group on the Server machine where you have Attunity Connect and SQLServer installed, for example call it "Attunity".
    2. Add all the users which you want to allow access to the SQLServer Linked Server and Attunity Connect.
    3. On the Server machine invoke the Component Services located at the Control Panel/Administrative:
    • Expand Computer Services/Computers/My Computer/DCOM Config.
    • Locate the MSDINITIALIZE and Riight-Click on it.
    • Click on the Security Tab.
    • In the "Launch and Activation Permissions" click on "Customize", then click Edit.
    • Add the newly created local Group (Attunity) and check all permissions (Local Launch, Remote Launch, Local Activation, Remote Activation).
    Attachment 123
    4. The next step is to allow the users which are part of the "Attunity" group to read and write from the Attunity NAVROOT/def and NAVROOT/tmp directories.

    The "def" directory contains the definitions of the Attunity Server product, accessing any part of the configuration will need to create a DISAM (.lck) file. This will not be possible without read/write permissions.

    The same for the "tmp" directory, we need to allow the remote user which activated the OLEDB/Attunity processes to be able to read/write to the "tmp" directory.

    Locate the Attunity Server installation directory (NAVROOT), and Right-Click on the "def" directory, add the local group which we created and give it read/write permissions.

    Repeat the same for the "tmp" directory.

    5. Restart the MSSQLServer service.
    To Find Out more About Attunity Technology:
    Attunity
    or:
    Contact Us

  2. #2
    bugmeister is offline Junior Member
    Join Date
    Apr 2008
    Posts
    4
    Rep Power
    0
    Hi,

    Is there any way to get the Attunity link working when SQL Server is configured to run as a Domain Account (not LocalSystem) and without "Allow In-Process" beign enabled. Ruuning SQL as LocalSystem is not best practise and somethign we'd liek to avoid, and the last time we enabled "Allow In-Process" we encountered SQL Server stability issues.

    Cheers
    Peter

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •