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

Neaktivní relace v Oracle od JDBC

V čem přesně je problém?

Aplikační server střední vrstvy obvykle vytváří fond připojení. Když váš kód požaduje připojení, získá již otevřené připojení z fondu, místo aby procházel režií vytváření nového připojení k databázi. Když váš kód uzavře připojení, připojení se vrátí do fondu, nikoli přes režii fyzického uzavření připojení. To znamená, že bude existovat přiměřený počet připojení k databázi, kde je STATUS v V$SESSION je v daném okamžiku "NEAKTIVNÍ". To je naprosto normální.

I při zatížení je většina databázových připojení ze střední vrstvy po většinu času „NEAKTIVNÍ“. Stav "INACTIVE" pouze znamená, že v okamžiku, kdy jste spustili dotaz, relace neprováděla příkaz SQL. Většina připojení stráví většinu času buď sezením ve fondu připojení a čekáním na relaci Java, která je otevře, nebo čekáním na relaci Java, aby něco provedla s daty, nebo čekáním v síti na přenos dat mezi počítači.

Zobrazuje se vám skutečně chyba (tj. ORA-00020:překročen maximální počet procesů)? Nebo jste jen zmatení počtem záznamů v V$SESSION ?




  1. Vytvořte funkci s hodnotou tabulky na serveru SQL Server

  2. Existuje v Oracle funkce, která vypočítá rozdíl mezi dvěma daty?

  3. 4 způsoby, jak databáze zásob těží z maloobchodu

  4. Problém s porovnáním řetězců Oracle PL/SQL