2011-08-04 14 views
15

Mam pakiet SSIS, który jest wykonywany przez zadanie SQL, które działa dwa razy dziennie. Niedawno zaktualizowałem pakiet SSIS, usuwając klauzulę where instrukcji Select. Teraz wyniki mają około 1800 wierszy w porównaniu do 650 przed. Po uruchomieniu nowego pakietu na mojej lokalnej maszynie wszystko działa poprawnie. Ale kiedy umieściłem go na serwerze Prod, to nie działa i daje mi Hresult: 0x80004005 Opis: "Błąd przekroczenia limitu czasu logowania".Pakiet SSIS tworzący Hresult: 0x80004005 Opis: "Wystąpił błąd przekroczenia limitu czasu logowania"

Ten błąd jest zwykle zgłaszany, gdy dostęp zdalny nie jest włączony, ale jest. Zlecenie działa pod moim kontem, więc prawa nie powinny stanowić problemu. Ponadto pakiet działał bez problemów, a ja zmieniłem tylko klauzulę where, która powoduje, że tabela jest większa o tysiąc wierszy, więc nie powinienem mieć do tego błędu przekroczenia limitu czasu logowania.

Wiem, że to nie pozostała przestrzeń na serwerze, ponieważ jeśli zmienię plik konfiguracyjny pakietu SSIS i skieruje go do bazy danych produkcji, wszystko działa dobrze.

Znowu ten problem mnie dręczy, ponieważ kiedy umieszczam stary pakiet ze starym klauzulą ​​where, wszystko działa dobrze.

Ktoś ma pojęcie, co może być przyczyną problemu?

Oto wpisu:

Executed as user: Services. ...sion 9.00.3042.00 for 32-bit Copyright (C) Microsoft Corp 1984-2005. All rights reserved. Started: 1:49:21 PM Error: 2011-08-04 13:50:12.28 Code: 0xC0202009 Source: Brd Load Connection manager "DataBase" Description: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80004005. An OLE DB record is available. Source: "Microsoft SQL Native Client" Hresult: 0x80004005 Description: "Login timeout expired". An OLE DB record is available. Source: "Microsoft SQL Native Client" Hresult: 0x80004005 Description: "An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections.". An OLE DB record is available. Source: "Microsoft SQL Native Client" Hresult: 0x80004005 Description: "TCP Provider: A connection att... Process Exit Code 1. The step failed.

+0

Czy to możliwe, że zmieniłeś ciąg połączenia do (lokalne) lub '.' kiedy robili swoim rozwoju? –

+0

Nie, ponieważ przenoszę tylko pakiet, ale nie zmienia pliku konfiguracyjnego, więc plik konfiguracyjny jest taki sam dla pakietu, który działa, a ten, który nie jest – Hugo

Odpowiedz

16

końcu znalazłem problem. Błąd nie był dobry.

Podobno źródło Ole DB ma błąd, który może spowodować awarię i zrzucić ten błąd. Zastąpiłem miejsce docelowe OLE DB poleceniem OLE DB z instrukcją wstawiania i naprawiłem to.

Link GOT mnie tam: http://social.msdn.microsoft.com/Forums/en-US/sqlintegrationservices/thread/fab0e3bf-4adf-4f17-b9f6-7b7f9db6523c/

Dziwny Bug, nadzieję, że będzie pomagać innym ludziom.

+0

Twój opis jest trochę zagmatwany.Czy to źródło OLE DB, miejsce docelowe lub oba mają problem? –

+0

@ Hugo, próbowałem dodać więcej szczegółów w mojej odpowiedzi poniżej. Dzięki za link. – astaubin

0

Miałem podobny błąd. Może to wynikać z dwóch powodów. a) Jeśli korzystasz ze zmiennych, ponownie wyuczaj wyrażenia, w których używane są zmienne, i upewnij się, że egzoszja jest ewaluowana bez błędów. b) Jeśli usuniesz arkusz Excela i utworzysz arkusz Excela w locie w paczce.

4

Odpowiedź tutaj nie jest jasna, więc chciałem dodać więcej szczegółów.

Używając powyższego linku, wykonałem następujący krok.

W moim menedżerze konfiguracji XML zmieniłem "Dostawcę" na SQLOLEDB.1 zamiast SQLNCLI.1. To pomogło mi przez ten błąd.

Ta informacja jest dostępna pod linkiem OP zamieszczonym w Odpowiedzi.

Link GOT mnie tam: http://social.msdn.microsoft.com/Forums/en-US/sqlintegrationservices/thread/fab0e3bf-4adf-4f17-b9f6-7b7f9db6523c/

Powiązane problemy