SSIS package with oracle connection failing when run via SQL job - sql-server

I have developed an SSIS package and it is running fine from visual studio. I have deployed this package to SQL server and created a job for its execution. Now the job is failing throwing an error at Data flow task which contains Oracle source.
Please find the below error that I received:
Error: The requested OLE DB provider OraOLEDB.Oracle.1 is not registered. If the 64 bit driver is not installed run the package in 32 bit mode.Error code: 0x00000000
An OLE DB record is available. Source: "Microsoft OLE DB Servoce Components" Hresult: 0x80040154. Description: "Class not registered".
Error: SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER. The AcquireConnection method call to the connection manager "Oracle_Source_DWH" failed with error code 0xC0209303. there may be error messages posted before this with more information on why the AcquireConnection method call failed.
Please help me how to resolve this error.
I tried uninstalling the Oracle client but didn't work.
Thanks in Advance,
Chandu

I suppose that you have Oracle client installed on your SQL Server machine, not only on your developer machine.
In that case the most frequent reason of packages executing successfully in VS and fails on SQL Server is that VS using x86 provider, but SQL Server is using x64 version.
You have 2 ways to fix that issue:
Install x64 (or both x86 and x64 if you develop on server machine) Oracle clients on SQL Server machine.
In theory (I've never used this) - on the "Execution options" tab of the job step set checkbox "Use 32 bit runtime".

Related

I get SSIS Error code: The AcquireConnection method call to the connection manager Oracle Connection Manager failed with error code 0x80004005

I'm building a new SSIS package to export data from an Oracle database into a SQL database but I'm getting errors when I try to execute the task in SSIS.
I've installed the 32bit and 64 bit connector for Oracle
https://www.microsoft.com/en-us/download/details.aspx?id=55179
and the SQL Server 2017: Microsoft Connector Version 5.0 for Oracle by Attunity
https://learn.microsoft.com/en-us/sql/integration-services/data-flow/oracle-connector?view=sql-server-ver15
I've set the Run64BitRuntime to False
I've checked the connection in the connection manager
and also can preview the data.
I'm a complete newbie using Oracle and still learning SSIS so any help fixing this would be appreciated.

Cannot load excel file - The requested OLE DB provider Microsoft.ACE.OLEDB.12.0 is not registered

I've created an SSIS package that loads an Excel file to an SSMS with no problems.
When I deploy the package to SSMS and run the package from there I get this error:
Error: the requested OLE DB provider Microsoft.ACE.OLEDB.12.0 is not registered. If the 64-bit driver is not installed, run the package in 32-bit mode. Error code: 0x00000000.
An OLE DB record is available. Source: "Microsoft OLE DB Service Components" Hresult: 0x80040154 Description: "Class not registered".
I've tried absolutely everything to fix this.
I've downloaded the 32-bit AccessDatabaseEngine.exe and changed the SSIS package to run in 32-bit mode and also changed it in SSMS to run in 32-bit mode.
Just to be sure I also tried all of this but with 64 bit versions... still getting the same error...
My Excel, SSMS and Visual Studio are all 32-bit. When looking at my system through Control Panel > System, my system type is 64-bit.
Is there any way at all I can get this working through SSMS? I've exhausted the internet for solutions. Can anybody help?

SSIS: An OLE DB Error has occurred. error code 0x80004005, The peer prematurely closed the connection

SSIS error Code DTS_E_OLEDERROR. An OLE DB Error has occurred. error code 0x80004005. An OLE DB record is available. Source: "Microsoft OLE DB Provider for SQL Server 2016 Analysis Services.” Hresult: 0x80004005 Description: “An error was encountered in the transport layer.”. An OLE DB record is available. Source: "Microsoft OLE DB Provider for SQL Server 2016 Analysis Services.” Hresult: 0x80004005 Description: “The peer prematurely closed the connection.”.
Issue encountered: When trying to run SSAS Cube from SSIS.
Following SQL server setup:
SSIS: SQL Server 2016 version 13.0.5622.0 (OS 2016 Core Server)
SSAS: SQL Server 2016 version 13.0.5102.14 (OS 2012 Server non-Core)
What we have tested so far:
SSAS: When running SSAS Package directly - No Issues will Occur. Meaning, we remove doubts that concerns issues from SSAS
SSIS:SQL Server 2016 version 13.0.5622.0 (OS 2012 Server non-Core) - When running the package under this server, issue will not occur.
SSIS: SQL Server 2016 version 13.0.5622.0 (OS 2016 Core Server) - When running Package under this server, Issue will occur.
from #3 - Updating Provider from MSOLAP.6 to MSOLAP.7 - Issue still occur.
Process:
Create SSIS with Analysis Service Processing Task
have connection string : Data Source=;Initial Catalog=;Provider=MSOLAP.7;Integrated Security=SSPI;Impersonation Level=Impersonate;
Create SSAS Process : Any Process will do as long as it will run
Run SSIS < Error will occur once SSIS executed
Has anybody encounter the same or the issue with similar like ours?
I had the similar issue the only change being the OS is windows 2016 server non-core. Initially the Analysis Engine was running on SQL Server 2017 RTM Version. After applying the Latest Cumulative Update (CU20) the issue got resolved. May be it worked in my case hence thought of sharing so that it could help others.
Below are the details
OS: Windows 2016 Server non Core
SQL Version: 2017 RTM
when executed the Package from the same server we got the below error
"The Following System Occurred" .
However when executed remotely we got the error
"The peer prematurely closed the connection"
The problem is in 32BITS driver version. Use 64 bits driver and will work fine

Problem trying to run SSIS package with Oracle Connection Attunity

I'm having the following issue:
I have an SSIS package that connects to an oracle DB using Attunity Connection Manager.
It does connect in my local pc (to a remote oracle db server) and extracts and all, seems to work.
The problem comes when I load it to SQL server to be run as a Job.
I have ran other jobs so the setup is proper, set to run with 32 bit runtime, loading as a file system type.
but when I try to execute the job it gives the following error:
Executed as user: username. Microsoft (R) SQL Server Execute Package
Utility Version 12.0.2548.0 for 32-bit Copyright (C) Microsoft
Corporation. All rights reserved. Started: 9:39:28 PM Error:
2019-09-27 21:39:28.90 Code: 0xC0010018 Source: Package
Description: Error loading value "
Now, as it runs locally, I believe that it might be related with something in the SQL server where I deploy the package so I'll give some information about the setup and some notes:
When running using the Native OLE DB source from SSIS it works (but I want to use the attunity as I read is faster)
Server version is: Microsoft SQL Server 2014 - 12.0.2548.0 (X64) on Windows NT 6.3 - Microsoft SQL Server Developer (64-bit)
I tried to install the Attunity components from here: https://www.microsoft.com/en-us/download/details.aspx?id=55179 but both in my local computer as in the server I get an error saying that it does's find SQL Server installed, however installation seems to finish succesfully after this screenshot below:
(I do get some error registering dlls:
---------------------------
Microsoft Connector for Oracle by Attunity
---------------------------
An error occurred during registration of:
"C:\Program Files\Attunity\Microsoft Connector for Oracle\50\ENU\AttunitySSISOraAdapters.dll"
---------------------------
An error occurred during registration of:
"C:\Program Files\Attunity\Microsoft Connector for Oracle\50\ENU\AttunitySSISOraConnections.dll"
---------------------------
An error occurred during registration of:
"C:\Program Files\Attunity\Microsoft Connector for Oracle\50\bin32\ENU\AttunitySSISOraAdapters.dll"
---------------------------
An error occurred during registration of:
"C:\Program Files\Attunity\Microsoft Connector for Oracle\50\bin32\ENU\AttunitySSISOraConnections.dll"
---------------------------
and after it
I'm running Visual Studio 2017 Professional 15.9.16 with the following among others:
SQL Server Data Tools 15.1.61906.03120 Microsoft SQL Server Data
Tools
SQL Server Integration Services Microsoft SQL Server Integration
Services Designer Version 14.0.3002.113
Oracle Developer Tools for Visual Studio 12.2.0.1.0 Oracle Developer
Tools for Visual Studio Copyright (c) 2005, 2017
Please let me know if I'm missing information to help pinpoint the problem.
I think I might be missing a component but I don't really know what.
UPDATE: I changed the TargetServerVersion in the package properties from SQL Server 2017 to 2014 (the version I have installed) and I'm getting this error now:
Error: 2019-09-30 17:53:13.20 Code: 0x000002C0 Source: Package Connection manager "Oracle Connector 1" Description: OCI error encountered. ORA-12154: TNS:could not resolve the connect identifier specified End Error
Error: 2019-09-30 17:53:13.20 Code: 0x0000020F Source: Data Flow Task 1 1 Oracle Source [343] Description: The AcquireConnection method call to the connection manager Oracle Connector 1 failed with error code 0x80004005. There may be error messages posted before this with more information on why the AcquireConnection method call failed. End Error
Error: 2019-09-30 17:53:13.20 Code: 0xC0047017 Source: Data Flow Task 1 1 SSIS.Pipeline Description: Oracle Source failed validation and returned error code 0x80004005. End Error
Error: 2019-09-30 17:53:13.20 Code: 0xC004700C Source: Data Flow Task 1 1 SSIS.Pipeline Description: One or more component failed validation. End Error
Error: 2019-09-30 17:53:13.20 Code: 0xC0024107 Source: Data Flow Task 1 1 Description: There were errors during task validation. End Error
DTExec: The package execution returned DTSER_FAILURE (1). Started: 5:52:41 PM Finished: 5:53:13 PM Elapsed: 32.125 seconds. The package execution failed. The step failed.
UPDATE 2
I have uninstalled all I had and installed only the V3 version of the Attunity Connection Manager, still getting the error from above. At this point I don't know what could be happening.
It works when I run it from my Visual Studio (2017, with all connection managers pointing to the servers) but then when I schedule it on the SQL Server Agent it give the error shown, Also, it does work well when I use OLE DB Manager, the issue comes when trying to use the Oracle Source (from Attunity)
I'm also using the Connection manager set with format: host:port/ServiceName
I'm thinking I might have something badly set on the server? on terms of the Oracle setting? I have the following:
TNS_ADMIN: C:\Oracle\product\product\11.2.0\client_64bit\network\admin
I don't have more set, shall I have something more?
You missed the explanation about getting the correct version for your version of SQL Server, perhaps. Also the part about
Microsoft Connector Version 4.0 for Oracle The Microsoft Connector for Oracle is a set of managed components for transferring data from or to an Oracle database. The component is designed to be used with the Enterprise and Developer editions of SQL Server 2016 Integration Services and will only operate in those environments. To install the component, run the platform-specific installer for x86 or x64 computers respectively. Read the installation topic in the Help file for installation prerequisites and additional information.
Also:
Microsoft Connector Version 5.0 for Oracle The Microsoft Connector for Teradata is a set of managed components for transferring data from or to Oracle database. The component is designed to be used with the Enterprise and Developer editions of SQL Server 2017 Integration Services and will only operate in those environments. To install the component, run the platform-specific installer for x86 or x64 computers respectively. Read the installation topic in the Help file for installation prerequisites and additional information.
Instead, try the Attunity V3 drivers that can be found here:
The error was being caused on the package trying to run in 32 bit mode. I changed the package settings to 64bit and the SQL Agent settings to run in 64 bits and it started running, it works perfect now :)

SSIS Package Upgrade Issues 2008 to SQL Server 2016

I'm trying to upgrade SSIS packages created in SQL Server 2008 to SQL Server 2016 by opening the solution in Visual studio 2015 in my local. I'm using the correct version of SSDT for VS 2015. I have selected all the SSIS packages in the solution for upgrade and upgrade was unsuccessful with the below error messages.
I tried to open the packages in the solution one by one and it shown the dialogue upgrade is successful with some warnings. Please help me to solve the issues shown in the below error messages. As I have upgraded the package individually by opening it, will there be any other issues? (I can run it in local and still didn't try to put the package in our system where packages are getting called automatically)
Main error messages:
Upgrading package XXXX.dtsx (Error)
Messages
Warning 0x4020f42c: : The Maximum insert commit size property of the OLE DB destination "OLE DB Destination" is set to 0. This property setting can cause the running package to stop responding. For more information, see the F1 Help topic for OLE DB Destination Editor (Connection Manager Page).
Error 0xc0202009: XXXX: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80004005.
An OLE DB record is available. Source: "Microsoft OLE DB Provider for SQL Server" Hresult: 0x80004005 Description: "[DBNETLIB][ConnectionOpen (Connect()).]SQL Server does not exist or access denied.".
Error 0xc020801c: Load new records: SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER. The AcquireConnection method call to the connection manager "YYYYYY" failed with error code 0xC0202009. There may be error messages posted before this with more information on why the AcquireConnection method call failed.

Resources