sql >> Databáze >  >> RDS >> Oracle

Jak vymazat fond připojení ODP.NET při chybách připojení?

Pokud můžete použít odac (odp) 11g , jste pro svůj bazén nastavili Ověřit připojení. Může ověřit připojení, než jej použijete.

Ověřit připojení atribut ověřuje připojení přicházející z fondu. Tento atribut by se měl používat pouze v případě, že je to absolutně nezbytné, protože způsobí, že každé připojení bude ověřeno zpětným přechodem do databáze bezprostředně před jeho poskytnutím aplikaci. Pokud jsou neplatná připojení neobvyklá, mohou vývojáři vytvořit vlastní obslužnou rutinu události k načtení a ověření nového připojení namísto použití atributu Ověřit připojení. To obecně poskytuje lepší výkon.

Pokud to nebude dost dobré - můžete zkusit tento dokument od oracle.

Správa fondu připojení

Správa fondu připojení ODP.NET poskytuje explicitní řízení fondu připojení k aplikacím ODP.NET. Aplikace mohou explicitně vymazat připojení ve fondu připojení.

Pomocí správy fondu připojení mohou aplikace provádět následující:

Poznámka:Tato rozhraní API nejsou podporována v uložené proceduře .NET. Vymažte připojení z fondů připojení pomocí ClearPool metoda.

Vymažte připojení ve všech fondech připojení v doméně aplikace pomocí ClearAllPools metoda.

Když jsou připojení z fondu vymazána, ODP.NET znovu naplní fond novými připojeními, která mají v řetězci připojení alespoň počet připojení nastavený podle Min. velikosti fondu. Nová připojení nemusí nutně znamenat, že fond bude mít platná připojení. Pokud je například databázový server při volání ClearPool nebo ClearAllPools mimo provoz, ODP.NET vytvoří nová připojení, ale tato připojení jsou stále neplatná, protože se nemohou připojit k databázi, i když se databáze objeví později.

Doporučuje se, aby se ClearPool a ClearAllPools nevolaly, dokud aplikace nevytvoří platná připojení zpět k databázi. Vývojáři NET mohou vyvinout kód, který nepřetržitě kontroluje, zda lze vytvořit platné připojení k databázi, a jakmile je to pravda, zavolá ClearPool nebo ClearAllPools.

Také vám může pomoci tento příspěvek.

Aktualizovat :Jak poukázal @MPelletier, pro oracle 12 je odkaz jiný.



  1. Jak získat pouze číselné hodnoty sloupců?

  2. Použijte @@ IDENTITY k vrácení poslední vložené hodnoty identity na serveru SQL Server

  3. Práce s Java daty v Qlik Sense

  4. Jak vložím více hodnot do postgresové tabulky najednou?