Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
| Vlastnost | Hodnota |
|---|---|
| Product | SQL Server |
| ID události | 7399 |
| Zdroj událostí | MSSQLSERVER |
| Součást | SQLEngine |
| Symbolický název | RMT_HRESULT_FAIL |
| Text zprávy | Zprostředkovatel OLE DB "%ls" pro odkazovaný server "%ls" oznámil chybu.%ls |
Explanation
K této chybě dochází v případě, že dotaz na odkazovaný server selže kvůli chybě vygenerované na vzdáleném serveru.
Chyba 7399 je obecná chybová zpráva od poskytovatele. V některých případech můžete příznak trasování 7300 povolit, abyste od poskytovatele získali podrobnější chybovou zprávu. Zda obdržíte další informace, závisí na zprostředkovateli OLE DB (propojení objektů a vkládání, databáze), kterého používáte. Pokud chcete příznak trasování povolit, spusťte před spuštěním dotazu následující příkaz, který způsobí chybu:
DBCC TRACEON (7300, 3604);
Akce uživatele
I když je chyba 7399 obecnou chybou, která obsahuje konkrétnější zprávu, běžně pozorovaná konkrétní chyba je "Vypršel časový limit". Existují dvě konfigurovatelné možnosti časového limitu, které ovlivňují vzdálené dotazy: možnost časového limitu vzdáleného přihlášení a možnost časového limitu vzdáleného dotazu . Tady jsou příklady, jak se může zobrazit chyba časového limitu vyvolaná v rámci 7399 a jak ji vyřešit:
IDBInitialize::Initialize
Server: Msg 7399, level 16, State 1, Line 1 OLE DB provider 'SQLOLEDB' oznámil chybu. [Vrácené zprostředkovateli OLE/DB: Vypršel časový limit] Trasování chyb OLE DB [Zprostředkovatel OLE/DB SQLOLEDB IDBInitialize::Initialize vrácen 0x80004005: ].
Tato chybová zpráva se týká IDBInitialize::Initialize metody. K tomu dochází v případě, že doba potřebná dotazem k navázání připojení ke vzdálenému serveru překročí hodnotu časového limitu vzdáleného přihlášení .
Pokud chcete tuto chybu obejít, nastavte hodnotu časového limitu vzdáleného přihlášení na 30 sekund spuštěním následujícího kódu:
sp_configure 'remote login timeout', 30;
GO
RECONFIGURE WITH OVERRIDE;
GO
ICommandText::Execute
Server: Msg 7399, level 16, State 1, Line 1 OLE DB provider 'SQLOLEDB' oznámil chybu. Spuštění ukončeno poskytovatelem, protože bylo dosaženo limitu prostředků. [Vrácené zprostředkovateli OLE/DB: Vypršel časový limit] Trasování chyb OLE DB [Zprostředkovatel OLE/DB SQLOLEDB ICommandText::Execute vrácen 0x80040e31: Spuštění ukončeno poskytovatelem, protože bylo dosaženo limitu prostředků.]
Tato chybová zpráva se týká ICommandText::Execute metody. Označuje, že zpracování dotazu trvalo déle než čas zadaný v nastavení konfigurace časového limitu vzdáleného dotazu .
Výchozí hodnota časového limitu vzdáleného dotazu je 600 (10 minut).
Pokud chcete tuto chybu obejít, zakažte časový limit nastavením hodnoty časového limitu vzdáleného dotazu na 0 (nekonečné čekání) spuštěním následujícího kódu:
sp_configure 'remote query timeout', 0;
GO
RECONFIGURE WITH OVERRIDE;
GO