Как разрешить DTS_E_OLEDBERROR. в ssis
В пакете ssis состоит из задачи потока данных, содержит
Источник OLEDB и OLDB Target..provider - это собственный клиент sql.This используется для работы отлично.. но теперь появилась ошибка, как показано ниже.
Скажите, пожалуйста, как его решить, изменив его на ado.net?
ОС: windows 7 professional и db - SQL Server 2000
[Axe_Data [737]] Ошибка: код ошибки SSIS DTS_E_OLEDBERROR. Произошла ошибка OLE DB. Код ошибки: 0x80004005.
Доступна запись OLE DB. Источник: "Microsoft SQL Server Native Client 10.0" Hresult: 0x80004005 Описание: "Ошибка связи".
Доступна запись OLE DB. Источник: "Microsoft SQL Server Native Client 10.0" Hresult: 0x80004005 Описание: "Поставщик TCP: период таймаута семафора истек.
".
Мне очень нужна помощь в решении проблемы с SSIS. Я пытаюсь экспортировать/импортировать данные с помощью SSIS из одного кластера SQL в другой. Оба являются SQL 2008 Ent. 64-битная. Оба работают на Win2k8 Ent. 64-битная. Назначение - Win2k8 R2.
Проблема, которую я испытываю, является прерывистой, но очень частая. Соединение SSIS падает с разных этапов. Иногда происходит сбой при первой задаче, иногда на последнем.. иногда она полностью завершает первую итерацию (в каждом цикле) и терпит неудачу после следующей итерации.
Тождественная версия этого пакета была запущена в прошлом, без сбоев. Предыдущим пунктом назначения был один сервер (некластеризованный), работающий на стандарте Win2k3, и SQL 2005 Std. 64 бит.
Новый целевой сервер полностью свободен от трафика. Имеет много CPU/памяти и т.д. Пакет был выполнен либо с исходного сервера, либо с целевого сервера с аналогичными результатами.
Вот результат простой задачи импорта/экспорта:
- Копирование на [dbo]. [AGGSLIVE_Bandwidth] (Ошибка)
Сообщения
Ошибка 0xc0202009: поток данных Задача 1: код ошибки SSIS DTS_E_OLEDBERROR. Произошла ошибка OLE DB. Код ошибки: 0x80004005.
Доступна запись OLE DB. Источник: "Microsoft SQL Server Native Client 10.0" Hresult: 0x80004005 Описание: "Ошибка связи".
Доступна запись OLE DB. Источник: "Microsoft SQL Server Native Client 10.0" Hresult: 0x80004005 Описание: "Поставщик TCP: существующее соединение было принудительно закрыто удаленным хостом.".
(Мастер импорта и экспорта SQL Server)
Ошибка 0xc0209029: поток данных Задача 1: код ошибки SSIS DTS_E_INDUCEDTRANSFORMFAILUREONERROR. Вход "Входной" входной сигнал "(62)" не удался, потому что произошел код ошибки 0xC020907B, а расположение строки ошибки на "входе" Destination Input "(62)" указывает на ошибку при ошибке. Произошла ошибка в указанном объекте указанного компонента. До этого могут появляться сообщения об ошибках с дополнительной информацией о сбое.
(Мастер импорта и экспорта SQL Server)
Ошибка 0xc0047022: поток данных Задача 1: код ошибки SSIS DTS_E_PROCESSINPUTFAILED. Метод ProcessInput на компоненте "Destination - AGGSLIVE_Bandwidth" (49) не выполнен с кодом ошибки 0xC0209029 при обработке ввода "Destination Input" (62). Выбранный компонент возвратил ошибку из метода ProcessInput. Ошибка относится к компоненту, но ошибка является фатальной и приведет к прекращению работы задачи потока данных. До этого могут появляться сообщения об ошибках с дополнительной информацией о сбое.
(Мастер импорта и экспорта SQL Server)
Ошибка 0xc0209017: поток данных Задача 1: установка конца набора строк для буфера не выполнена с кодом ошибки 0xC0047020.
(Мастер импорта и экспорта SQL Server)
Ошибка 0xc0047038: поток данных Задача 1: код ошибки SSIS DTS_E_PRIMEOUTPUTFAILED. Метод PrimeOutput на компоненте "Источник - запрос" (1) возвратил код ошибки 0xC0209017. Компонент возвращал код сбоя, когда движок трубопровода назывался PrimeOutput(). Значение кода отказа определяется компонентом, но ошибка является фатальной, и конвейер прекратил выполнение. До этого могут появляться сообщения об ошибках с дополнительной информацией о сбое.
(Мастер импорта и экспорта SQL Server)
Ответы
Ответ 1
У меня была такая же проблема, и она, похоже, была связана с использованием того же соединения с базой данных для одновременных задач. Могут быть некоторые альтернативные решения (возможно, лучше), но я решил это, установив MaxConcurrentExecutables
в 1.
Ответ 2
Знание версии Windows и SQL Server может быть полезно в некоторых случаях. Из собственного клиента 10.0 я делаю вывод SQL Server 2008 или SQL Server 2008 R2.
Есть несколько возможных вещей для проверки, но я бы проверял, был ли настроен приоритет на SQL Server. Это устаревшая настройка и в конечном итоге будет удалена. Проблема в том, что он может лишить операционную систему необходимых ресурсов. См. Примечания по адресу:
http://msdn.microsoft.com/en-in/library/ms180943(v=SQL.105).aspx
Если "приоритет boost" был настроен на 1, затем настройте его на 0.
exec sp_configure 'priority boost', 0;
RECONFIGURE;
Ответ 3
Если это связано с проверкой пакета SSIS, возможно, что ваш источник db содержит несколько нулевых строк. После их удаления эта проблема больше не появится.
Ответ 4
Я бы начал с отключения TCP-разгрузки. Было несколько вещей, которые вызывают проблемы с прерывистым подключением, и это тот, который обычно является виновником.
Примечание. Я видел, что этот параметр вызывает проблемы в Win Server 2003 и Win Server 2008.
http://blogs.msdn.com/b/mssqlisv/archive/2008/05/27/sql-server-intermittent-connectivity-issue.aspx
http://technet.microsoft.com/en-us/library/gg162682(v=ws.10).aspx
http://blogs.msdn.com/b/psssql/archive/2008/10/01/windows-scalable-networking-pack-possible-performance-and-concurrency-impacts-to-sql-server-workloads.aspx
Ответ 5
У меня только что была эта проблема, и моя проблема заключалась в том, что у меня были нулевые строки в файле csv, который содержал текст "null", а не пустой.
Ответ 6
У меня была аналогичная проблема с моей командой OLE DB, и я решил ее, установив свойство ValidateExternalMetadata в компоненте в False.
Ответ 7
Я столкнулся с подобной проблемой.
Снимите флажок ( "В мастере снимите флажок с надписи" Первая строка имеет имена столбцов "), и перед запуском мастера убедитесь, что вы открыли свой
лист excel.
Затем запустите мастер, сняв флажок.
Это разрешило мою проблему.
Ответ 8
Решение этой проблемы:
Создайте другой менеджер соединений для ваших файлов Excel или flat, иначе вам просто нужно передать значения переменных в строке соединения:
Щелкните правой кнопкой мыши на Connection Manager
>> properties
>> Expression
>> Select "ConnectionString"
из выпадающего меню и передайте входную переменную, такую как path, filename..