Informationsteknologi

Sådan kontrolleres Oracle Databasehukommelse og lagringsstørrelse

ved visse lejligheder vil jeg blive bedt om et estimeret ressourcekrav til en database, der vil blive konfigureret til et udviklingsmiljø eller som en standby-database. Følgende er mine metoder til at beregne hukommelse og lagringsstørrelse baseret på den eksisterende produktionsdatabase. Beregningen af lagerstørrelsen er beregnet til f. eks.

1. Få den estimerede hukommelse fodaftryk af en eksisterende database.

—- Hent SGA-fodaftrykket for en databaseinstans:

kvm> vælg sum (værdi) / 1024 / 1024 “TOTAL SGA (MB)”fra v$sga;

—- få det aktuelle PGA-forbrug af en databaseforekomst:

vælg sum (pga_maks_mem) / 1024 /1024″ Total maks PGA (MB) ” fra V$proces;

en mere detaljeret oversigt over PGA-hukommelsesforbrug:

vælg spid, program,

pga_maks_mem maks,

pga_alloc_mem alloc,

pga_used_mem brugt,

pga_freeable_mem gratis

fra V$proces;

bemærk: det resulterende programnavn har intet tilknyttet procesnavn (f.eks. PMON, SMON, RECO,..) er en session proces .

afhængigt af indstillingerne for init-parameterprocesserne kan det være, at forespørgslerne ovenfor kun fanger de aktive forbindelser.

—- få det estimerede hukommelseskrav til de ikke-tilsluttede sessioner:

forespørgslen nedenfor giver den maksimale tildelte hukommelse af en brugersession. Vi bruger dette til at beregne de resterende hukommelseskrav til de ikke-forbundne processer.

vælg maks. (p. pga_maks_mem)/1024/1024 “PGA maks. hukommelse for brugersession (MB)”

fra v$process p, v$session s

hvor P. ADDR = S. paddr og S. brugernavn er ikke null;

få det maksimale antal processer, som en Oracle-instans kan håndtere.

Vælg navn, værdi fra V $ parameter

hvor navn = ‘processer’;

lad os tælle antallet af tilsluttede sessioner:

vælg count (1) fra v$session

hvor Brugernavn ikke er null;

få de samlede tilgængelige forbindelser ved at trække antallet af tilsluttede sessioner fra parameterværdien processer.

den resulterende værdi multipliceres med den resulterende maksimale tildelte hukommelse med en session udført af den foregående forespørgsel.

dette vil så give dig den estimerede mængde reservehukommelse, der er nødvendig for at rumme yderligere forbindelser.

estimeret samlet hukommelseskrav

SGA + PGA = EST hukommelse krav til aktuelle forbindelser

SGA + PGA + ikke-tilsluttede sessioner = EST-hukommelseskrav ved maksimal PROCESUDNYTTELSE

hvor:

ikke-tilsluttede sessioner (MB) = (processer – tilsluttede sessioner) * pga maks. hukommelse for brugersession

2. Få de estimerede krav til lagringsstørrelse i en database.

fremgangsmåden nedenfor til bestemmelse af Lagringsstørrelsen er beregnet til miljø. Hvad angår vinduer, skal du bare højreklikke og vælge egenskaberne på hver af de drevbogstaver, der er givet af resultaterne af forespørgslerne.

@primær server,

— Kopier og indsæt hver resulterende kommandoer på et shell script og udfør i primær server for at få monteringspunktstørrelsen

vælg unik ‘df-k’ / / a.MTPOINT MOUNT_POINT

fra ( Vælg substr(filnavn,0,instr (filnavn,’/’,1,2)-1) MTPOINT

fra dba_data_files

union

vælg substr (filnavn,0, instr (filnavn,’/’,1,2)-1) MTPOINT

fra dba_temp_files

union

vælg substr (medlem,0, instr (medlem,’/’,1,2)-1) MTPOINT

fra V$logfil

union

vælg substr (navn,0, instr(navn,’/’,1,2)-1) MTPOINT

fra V $ controlfile

) a;

— Forespørg alle parameterfildestinationer, og find ud af, om de har en anden sti fra datafilens monteringspunkt eller ORACLE_BASE dir.

Hent monteringspunktstørrelsen på fildestinationer

Vælg navn, værdi

fra V$parameter

hvor (regeksp_like(navn, ‘^log_archive_(dest|dest\_())$’, ‘i’) eller navn som ‘%dump_dest’ eller navn som ‘%file_dest’ eller navn som ‘diag%dest’ eller navn som =’utl_file_dir’) og værdien er ikke null;

— Forespørg databasekatalogerne for monteringspunkter

vælg ‘ DF-k ‘||substr(DIRECTORY_PATH,0,instr(DIRECTORY_PATH,’/’,1,2)-1) MTPOINT fra dba_directories;

et alternativ til en DF-kommando er at grep alt det gyldige databaserelaterede monteringspunkt i en enkelt streng for at få en meget mere kortfattet rapport.

eksempel:

$ df-k | grep-E ‘/u01|/u02 / / utldir / / opt’

Write a Comment

Din e-mailadresse vil ikke blive publiceret.