简体   繁体   中英

SQL Server unable to execute SSIS packages

I have upgraded SQL Server from 2012 to 2014, but now I am unable to run SSIS packages, I get an error:

unable to execute xp_regread procedure"

I am part of sysadmin role.

I have tried to explicitly grant permission for me but I get the same error.

The issue fixed by http://support.microsoft.com/kb/2720171/en-us (which does not require the latest CU) has a specific cause:

"This issue occurs because of the way Integration Services executes packages stored in SSISDB in SQL Server 2012 environments."

Translated, that means Microsoft failed to ensure the "Executed as user: DOMAIN|USER" was given permission to run XP_REGREAD.

That doesn't mean every user must be given permission to run XP_REGREAD. That means every user, even if they were supposed to have permission to run XP_REGREAD, was unable to run XP_REGREAD (hence the bug, hence the fix).

Check the following:

  1. Do all packages fail or is it that just this package fails?
  2. Search the package's T-SQL steps (if any) for the presence of "xp_regread".
  3. Logon as user: xxxx (or SETUSER) and try to run xp_regread. 3a. Can the package be run manually (outside of a scheduled job)? 3b. Review the permissions and role membership of user: xxxx in SQL Server 2012 (if still available) or temporarily make the user a sysadmin (for testing purposes).
    1. If a SQL Server login, ensure the sys.database_principals for "user: xxxx" maps to the correct sys.server_principals by SID (and use sp_change_users_login if it doesn't).
    2. Ensure the SQL Server Agent is a member of SQL Server's sysadmin role.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM