sql >> Database >  >> RDS >> Oracle

Automatische JDBC-query bleek erg traag te zijn

Statistieken van datawoordenboeken of vaste objecten kunnen oud zijn, probeer ze opnieuw te verzamelen:

exec dbms_stats.gather_dictionary_stats;
exec dbms_stats.gather_fixed_objects_stats;
alter system flush shared_pool;

Zelfs dat levert niet noodzakelijkerwijs statistieken op voor alle systeem objecten. Sommige objecten, zoals X$KFTBUE , moet handmatig worden verzameld. Hoewel dat een zeldzaam datadictionary-probleem is dat hier misschien niet relevant is.

Als dat niet werkt, zijn de volgende mogelijke stappen het bekijken van tools zoals SQL Tuning Advisor om een ​​profiel te maken, of het gebruik van SQL Plan Management om de optimizer te dwingen een specifiek plan te gebruiken dat eerder heeft gewerkt. Het afstemmen van een datadictionary-query kan erg moeilijk zijn, omdat je niet veel controle hebt.



  1. Een enkele rij splitsen in meerdere kolommen in mysql

  2. Zoek en vervang string in BLOB for Work of Excel File

  3. Hoe voeg ik een specifieke UUID in de h2-database in?

  4. mysql> gebruik mysql; maar ... FOUT 1044 (42000):Toegang geweigerd voor gebruiker '' @ 'localhost' tot database 'mysql'