Error with data collector step using DCEXEC.EXE

Alen Cappelletti 1,042 Reputation points
2025-02-05T17:48:01.9266667+00:00

Hi all,

I'm using in some query with the Data Collector feature.
In my DEV host I got 3 instances:

  • DEFAULT (sql 2019) where there is "MDW" repo DB
  • localhost/ALEN (sql 2019)
  • localhost/ALEN2022 (sql 2022)

There seems to be a strange error when executing the calls for "Data Collector" on SQL Server 2022.

I have just updated the instance with the latest CU to see if it would fix the issue, but nothing changed.

On the other two instances, simply running from prompt.\dcexec, it returns a message about missing parameters, while on ALEN2022, there is no way to get it to work.

Below the error:
DCEXEC.EXE - Unable to Find Entry Point

Unable to find the entry point ?SQLToolsDiag_TraceMsg@@YAXPEB_WKPEA_WZZ procedure in the dynamic link library C:\Program Files\Microsoft SQL Server\MSSQL16.ALEN2022\MSSQL\Binn\DCEXEC.EXE.

User's image

No one error message from SQL SERVER AGENT step (difficult to debug at first glance).
User's image

It seems to me something related to the windows sys.
I don't know what to do after a CU update?

Run as "Data collector" is ad-hoc proxy user with right permission that I use on my third named DEV instance (localhost/ALEN) and all go right.

User's imageUser's image

On my 3th DEV instance (2019) job run successful... only in 2022 not!

Do you have some ideas?

ALEN

SQL Server
SQL Server
A family of Microsoft relational database management and analysis systems for e-commerce, line-of-business, and data warehousing solutions.
14,491 questions
0 comments No comments
{count} votes

3 answers

Sort by: Most helpful
  1. Alen Cappelletti 1,042 Reputation points
    2025-02-06T08:53:32.92+00:00

    I Found a quick and dirty solution.
    As you can see I've insert a FULL path to the dcexec of SQL SERER 2019 default instance

    "C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\Binn\dcexec" -c -s 1 -i "$(ESCAPE_DQUOTE(MACH))$(ESCAPE_DQUOTE(INST))" -m 1

    and now job ran successful

    User's image

    1 person found this answer helpful.
    0 comments No comments

  2. Erland Sommarskog 119.6K Reputation points MVP
    2025-02-05T22:11:30.03+00:00

    I tried this on a few machines. On machines where I run SQL 2022 as a named instances, I get the same error messages as you. On machines where SQL 2022 runs as a default instance, I get a "normal" error message:

    dcexec: Missing runtime execution mode. Enter '-?' for help. dcexec: Missing set ID. Enter '-?' for help.

    I also tested with a named instance running SQL 2019. There it works.

    If you need DCEXEC running on a named instance, I would suggest that you open a support case and press for a fix.

    My impression is that the Data Collector is not widely used. And probably for good reasons.


  3. ZoeHui-MSFT 41,291 Reputation points
    2025-02-06T06:09:15.0833333+00:00

    Hi @Alen Cappelletti,

    I'd like to suggest you may open a ticket to Microsoft support and the engineers will help to resolve the issue.

    Services Hub (microsoft.com)

    Regards,

    Zoe Hui


    If the answer is helpful, please click "Accept Answer" and upvote it.

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.