sql >> Databasteknik >  >> RDS >> Oracle

Utgått databaslösenord och still-alive-anslutningar

Om ett användarlösenord går ut i mitten av en redan etablerad anslutning(session), kommer det inte att avsluta en användarsession - sessionen kommer inte att stängas automatiskt. Användaren kommer att kunna fortsätta och uppmanas (SQL*PLUS eller andra verktyg) att ändra sitt lösenord vid första försöket att logga in efter utgången. Det är rätt beteende. Låt en användare avsluta det han/hon redan har påbörjat. Om du kan stänga en anslutning som dödar en användarsession direkt efter utgången kommer du förmodligen inte att göra det rent och användarens arbete kallt går förlorat.

Redigera

Låt oss först och främst definiera session och anslutning. Session är en logisk enhet och anslutning är fysisk. Och en anslutning kan ha från 0 till n sessioner etablerade på den (Du kan testa den med sql*plus CLI och information från v$process se). Lösenordsutgången lutar alltså mer mot användarsession än anslutning och när en användare loggar ut upphör dess session att existera, men anslutningen kan fortfarande upprättas och stängas när en klientapplikation stängs.

Ja det är möjligt. om du är helt säker på att en användare eller ett program har fått sitt arbete gjort och helt enkelt glömt att stänga en session, kan du använda alter system kill session <<SID>>, <<Serial_Number>> att döda (du måste beviljas alter system privilege ) sessionen/sessionerna.

Du kan skapa en profil med IDLE_TIME alternativet specificerat.

create profile <<Profile_name>> limit idle_time <<num_of_minutes>>

och tilldela den till en användare. När en sessionsinaktivitetstid - tiden när en session inte gör några SQL-anrop överstiger <<num_of_minutes>> Oracle kommer att återställa den aktuella transaktionen och avsluta den sessionen.

Du kan också konfigurera avslutning av en anslutning som inte längre används genom att ställa in SQLNET.EXPIRE_TIME parameter , på minuter, i sqlnet.ora fil.




  1. Vad är skillnaden mellan oraklets "åå" och "rr" datummask?

  2. välj alla kolumner med gruppera efter i vilolägeskriteriefrågor

  3. cx oracle ImportError

  4. Prestandajustering av en DECODE()-sats i en WHERE-sats