Issue
I have gone through the answers for similar questions:
The operation could not be performed because OLE DB provider "SQLNCLI10" for linked server "DB_PROD_04" was unable to begin a distributed transaction
Distributed Transaction on Linked Server between sql server and mysql
But, they just don’t seem to be working for me and hence I am requesting for a solution with a fresh post.
Background: I have MySQL Server that is completely managed by a vendor and I only have READ access to it. On the other hand, I have SQL Server 2014 instance (Caller) running on Windows Server 2012 R2 in our domain. Previous DBA had set up Linked Server named ‘BEQUICK’ to call a Stored Procedure:
Exec usp_ExtractBqDataAndPreprocess 13
This Stored Procedure fetches aggregated data from MySQL instance and saves it to our Disk. Within this Stored Procedure runs 3 Stored procedures.
Exec BEQUICK_CUBE_Customers_post_pull
Exec BEQUICK_CUBE_Customers_Update
Exec BEQUICK_CUBE_Inventory_Update
Issue: Today when I tried to run it, it fetched me an error stating that the Operation could not be performed because OLE DB provider “MSDASQL” for Linked Server “bequick” was unable to begin a distributed transaction.
Actions Taken: Step1: Accessed Linked Server Properties > Server Options, altered it to:
Step2: Accessed Local DTC Properties, and kept trying all combinations to somehow make it work. Finally, leaving it as:
Step3: I got into Windows Firewall and ensured:
None of this could resolve my issue and now I don’t know what is next so any help will be highly appreciated. Please do let me know if I haven’t furnished any intrinsic information that I should have.
Solution
Although I didn’t receive a resolution here, I finally figured out that it was my Driver properties where things were going wrong. Posting this answer so that if someone else falls into same kinda trouble, even they can check this alternative. Thanks!
Answered By – Alok
Answer Checked By – Willingham (BugsFixing Volunteer)