Tuesday, 5 May 2020

SSIS Bugs - It runs on local but not in live

SSIS package running on local but not when deployed?

Here is a check list of things to look at:
  • Check whether the Agent is set to run as 32 or 64 bit. Change and test again.
  • Check whether the 64 bit mode is enabled or not on the package itself
  • Check that the latest version of the OLEDB driver is installed on the machine you deployed to:
    • Especially if the error message says "The requested OLE DB provider MSOLEDBDQL.1 is not registered." or "Class not registered."
    • download it from here: https://www.microsoft.com/en-us/download/confirmation.aspx?id=56730
  • If the owner of the Agent Job has sysadmin or CONTROL server permissions, then the job will run using the SQL Server Agent service account (unless its set to use a proxy). Otherwise it will run as the Job owner. Make sure the relevant account has the right permissions on the server you are trying to connect to. So....
    • Ensure the SQL Server Agent account has permission to run on all servers the job touches, if the Job is running as the SQL Server Agent
  • Ensure the relevant account (see above) has correct file system permissions if the package is looking at the file system.
  • Check that the package Target Server Version is the same version as your server.
  • If you can't get it to run with SQL Server Agent, try using a Proxy. 
    • First create a system login (use your personal one to test, then have service desk create a security login with a password that never expires)
    • Give the system login sysadmin to test
    • Then create a credential under Security > Credentials
    • Then create a Proxy, adding that credential to it, and put the credential into the principles
    • Then in the Job Step, set the Run As property to the credential.

Helpful link: