Sort_area_size bruges i forbindelse med sortering af søgninger. Så vidt jeg husker, hvis parameteret er for lille bruges temp istedet. Dette kan så med føre den overnævnte fejl.
hvor stor sort_area_size skal være, er ligesom alle andre oracle-parameter en videnskab i sig selv. Du må prøve dig frem, ulempen er bare at basen skal genstartes ved ændringer af init.ora.
Prøv metalink.oracle.com og søg efter dokument 102339.1
deamil: sort_area_size kan da godt sættes i den enkelte session ?? Alter session set sort_area_size=30000000;
Er du ved at lave et index, eller ? Indexet vil blive lagt som temp segment i det tablespace du placere det, indtil det er færdigbygget. Derefter vil det blive sat til at være det rigtige index. Smart måde at spare tid på... Det betyder at du skal have plads nok for at det kan være i tablespacet - og skal derfor sætte maxextents højt nok.
Hvad extent størrelse har du? Hvor meget forsøgte du at sætte det op til ?
det er når jeg prøver og lave indexed, at jeg får at vide, at max extens i temp segmentet for aktuelle tablespace er nået, men jeg kan ikke finde ud af og ændre på maxextents for et tempsegment, jeg kan gøre det for hele tablespaces, alle datafilerne i tablespaces samt for tabellen som jeg prøver og lave et index over (uden resultat)
Men jeg kan ikke lave noget der hedder (noget i stil med): ALTER TEMPSEGMENT FOR TABLESPACE xxxx (maxextenst 600);
Jeg forstår hvad du mener - men det er ikke helt sådan det fungere.
Du kan f.eks. ALTER TABLESPACE USERS DEFAULT STORAGE ( MAXEXTENTS UNLIMITED);
Men det er ikke godt at have alt for mange extents i sit tablespace - så hellere sætte extent størrelsen op. Initial og next skal helst stå til det samme - så undgår du fragtmentering ..
Lad være med at tænke på det som et temp segment - det er bare et alm segment som er temporary indtil dit index er færdigbygget. Så sæt storage på dit tablespace og du er flyvende igen...
altså, jeg har prøvet det som pnielsen skriver "ALTER TABLESPACE PRIVTABSP DEFAULT STORAGE ( INITIAL 1M NEXT 1M MAXEXTENTS UNLIMITED );", jeg får stadig fejlen: "ORA-01630: max # extents (300) reached in temp segment in tablespace PRIVTABSP " - selvom jeg sætter tablespaced til umlited - så der må altså være et temp segment, som jeg ser det!?
aha, nu er jeg med ... :-) sorry, det er jo selvfølgelig fordi jeg opretter indexet med for lille max extent (eller for lille next), når den så smider data i indexed, og når max extent, laves der en roll back :-)Derfor siger den det med temp segment!
he he ... det kan jo smutte!!
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.