25 tammikuun, 2022

Miten tarkistaa arkiston lokin koko

tässä viestissä puhun seuraavista 3 aiheesta.

  1. miten määritellään arkiston Lokikoko?
  2. Ovatko kaikki Arkistolokit samankokoisia?
  3. Miten tarkistaa arkiston lokin koko?

A. miten määritellään arkiston Lokikoko?

ennen arkistoidun lokin koon määrittämistä on tiedettävä, että arkistoidut lokit ovat peräisin online redo-lokien kytkemisestä. Mikä tarkoittaa, arkistoitu lokit ovat eläkkeellä ja kopioitu verkossa redo lokit. Toisin sanoen, et määrität arkistoitu lokikoko, itse asiassa määrität online redo lokikoko.

Määrittele Keskimääräinen palautumisaika (MTTR)

, mutta nyt kysymys kuuluu: miten asettaa oikea ja optimaalinen koko online redo-lokeille? Siihen on yksinkertainen vastaus. Jos tietokantasi on Oracle 10g eteenpäin, voit saada optimaalisen arvon nykyisestä instanssikokoonpanosta.

ensin on varmistettava, että FAST_START_MTTR_TARGET on asetettu muuksi arvoksi kuin nollaksi.

SQL> show parameter fast_start_mttr_target;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
fast_start_mttr_target integer 1800

Tarkista optimaalinen Lokikoko

jos olet asettanut FAST_START_MTTR_TARGETIN, ts. 1800 sekuntia tässä tapauksessa, voit saada neuvoa optimoida lokitiedosto kokoa tällä kyselyllä.

SQL> select target_mttr, estimated_mttr, optimal_logfile_size from v$instance_recovery;
TARGET_MTTR ESTIMATED_MTTR OPTIMAL_LOGFILE_SIZE
----------- -------------- --------------------
146 21 1469

kuten näette, kolmas sarake OPTIMAL_LOGFILE_SIZE on vastaus. Oracle suosittelee asettamaan uudelleen lokin koon 1469mb.

seuraavaksi saatamme joutua muuttamaan lokien kokoa, jotta voimme noudattaa suositeltua kokoa.

B. Ovatko kaikki Arkistolokit samankokoisia?

useimmiten arkistoidut lokit ovat samankokoisia,mutta niihin voivat vaikuttaa seuraavat tekijät

määritetäänkö kaikki samankokoiset lokit uudelleen?

vaikka meidän pitäisi määritellä kaikki redo-lokiryhmät ja jäsenet samankokoisiksi, saatat nähdä eri kokoja redo-lokien joukossa on määritelty harvoissa tietokannoissa. Yleensä suurempi redo lokit lisätään jälkeen tietokannan luominen. Siksi näimme erikokoisia arkistoituja lokkeja.

Oletko koskaan asettanut lokin vaihtoväliä?

lokin vaihto voidaan tehdä kiinteällä aikavälillä asettamalla ARCHIVE_LAG_TARGET-alustusparametri, jonka avulla voit hallita arkistotaajuutta.

jos parametri on muu kuin oletusarvo (0, ei käytössä), lokin vaihto tapahtuu jonkin verran ennen kuin lokit täytetään uudelleen. Tällaiset ennenaikaiset redo-lokit tekevät erikokoisia arkistoituja lokkeja.

RMAN Backup

lokin vaihtovälin asettamisen lisäksi tietokannan varmuuskopiointi, jossa on RMAN: n arkistoidut lokit, käynnistää lokin vaihdon. Haluaisimme esimerkiksi tällaisen itsenäisen täyden varmuuskopion.:

RMAN> backup database plus archivelog;
Starting backup at 27-JUN-16
current log archived
...
Starting backup at 27-JUN-16
current log archived
...

kuten näette, 2 redo lokit arkistoitiin RMAN, ennen ja jälkeen täyden varmuuskopion. Ne ovat määritettyä kokoa pienempiä.

C. Miten tarkistaa arkiston lokin koko?

nyt palataan pääaiheeseemme, miten tarkistetaan arkiston lokikoko tietokannasta?

kunkin arkistoidun lokin koko

nähdäksemme kunkin arkistoidun lokin koon kysymme V$ARKISTOIDU_LOG:

SQL> column name format a50;
SQL> column "Size (MB)" format 9999.999;
SQL> select sequence#, name, blocks*block_size/1024/1024 "Size (MB)" from v$archived_log where status = 'A' and standby_dest = 'NO' and completion_time > sysdate-1;
SEQUENCE# NAME Size (MB)
---------- -------------------------------------------------- ---------
175398 /oradata/FRA/ORCL/ARCH/ERPAPP1_1_175398.arc 1023.999
175399 /oradata/FRA/ORCL/ARCH/ERPAPP1_1_175399.arc 1023.999
175400 /oradata/FRA/ORCL/ARCH/ERPAPP1_1_175400.arc 749.232
175401 /oradata/FRA/ORCL/ARCH/ERPAPP1_1_175401.arc 43.875
175402 /oradata/FRA/ORCL/ARCH/ERPAPP1_1_175402.arc 727.369
175403 /oradata/FRA/ORCL/ARCH/ERPAPP1_1_175403.arc 6.957
175404 /oradata/FRA/ORCL/ARCH/ERPAPP1_1_175404.arc 1023.993
175405 /oradata/FRA/ORCL/ARCH/ERPAPP1_1_175405.arc 1023.999
...

jokaisen arkiston lokin koko voidaan laskea KERTOMALOHKOISTA BLOCK_SIZE-sarakkeella. Lisäksi laskimme vain arkistoidut lokit, jotka valmistuvat 24 tunnissa ja ovat käytettävissä ensisijaisessa tietokannassa.

kuten näette, kaikki arkistolokit eivät ole samankokoisia, useimmat arkistoidut lokit ovat 1024MB (eli 1GB).

kaikkien arkistoitujen lokien koko

kaikki käytettävissä olevat lokit

jotta voimme nähdä käytettävissä olevien arkistoitujen lokien kokonaiskoon ensisijaisessa tietokantapalvelimessa, voimme tehdä tämän:

SQL> sselect sum(blocks*block_size)/1024/1024/1024 "Total Size (GB)" from v$archived_log where status = 'A' and standby_dest = 'NO';
Total Size (GB)
---------------
436.632

kuten näemme, meillä on yli 400 GT arkistoituja lokeja, meidän pitäisi poistaa ne aggressiivisemmin tästä lähtien.

Viimeiset 24 tuntia

summataksemme kaikki saatavilla olevat arkistoidut lokikoot viimeisen 24 tunnin ajalta ensisijaisessa tietokantapalvelimessa, voimme tehdä tämän:

SQL> column "Total Size (GB)" format 9999.999;
SQL> select sum(blocks*block_size)/1024/1024/1024 "Total Size (GB)" from v$archived_log where status = 'A' and standby_dest = 'NO' and completion_time > sysdate-1;
Total Size (GB)
---------------
101.828

lisäsimme suodattimen rajoittamaan arkistoitujen lokien ajallista soveltamisalaa.

Vastaa

Sähköpostiosoitettasi ei julkaista.