január 25, 2022

az archív napló méretének ellenőrzése

ebben a bejegyzésben a következő 3 témáról fogok beszélni.

  1. Hogyan határozható meg az archív napló mérete?
  2. minden archív napló azonos méretű?
  3. Hogyan ellenőrizhető az archív napló mérete?

A. Hogyan határozható meg az archív napló mérete?

az archivált napló méretének meghatározása előtt tudnia kell, hogy az archivált naplók az online redo naplók váltásából származnak. Ami azt jelenti, archivált naplók nyugdíjas és másolt online újra naplók. Más szavakkal, nem az archivált napló méretét határozza meg, valójában az online redo napló méretét határozza meg.

Define Mean Time to Recover (Mttr)

de most a kérdés: Hogyan állítsunk be megfelelő és optimális méretet az online redo naplókhoz? Van egy egyszerű válasz számunkra. Ha az adatbázis Oracle 10g tovább, akkor kap egy optimális értéket a jelenlegi példány konfiguráció.

először meg kell győződnie arról, hogy a FAST_START_MTTR_TARGET értéke nem nulla.

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

ellenőrizze az optimális Redo napló méretét

ha beállította a FAST_START_MTTR_TARGET beállítást, azaz. Ebben az esetben 1800 másodperc, akkor kaphat egy tanácsadó értéket a naplófájl méretének optimalizálásához ezzel a lekérdezéssel.

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

mint látható, a harmadik oszlop OPTIMAL_LOGFILE_SIZE a válasz. Az Oracle azt javasolja, hogy állítsa az újradobási napló méretét 1469 MB-ra.

ezután szükség lehet átméretezni újra naplók annak érdekében, hogy megfeleljenek az ajánlott méretet.

B. minden archív napló azonos méretű?

Az Archivált naplók többnyire azonos méretűek, de a következő tényezők befolyásolhatják őket.

az összes redo naplót azonos méretűnek definiálják?

bár az összes redo log csoportot és tagot azonos méretűnek kell definiálnunk, előfordulhat, hogy a redo log-ok között különböző méretek vannak meghatározva néhány adatbázisban. Általában a nagyobb redo naplókat az adatbázis létrehozása után adják hozzá. Ezért láttunk különböző méretű archivált naplókat.

beállította már a log kapcsoló intervallumát?

a Naplóváltás rögzített időközönként elvégezhető az ARCHIVE_LAG_TARGET inicializálási paraméter beállításával, amely segít az archiválási frekvencia szabályozásában.

ha a paraméter az alapértelmezett értéktől eltérő (0, letiltva), akkor a naplóváltás megtörténik Az újranaplók kitöltése előtt. Az ilyen korai redo naplók különböző méretű archivált naplókat készítenek.

RMAN Backup

a naplóváltási intervallum beállítása mellett az rman által archivált naplókkal készített adatbázis-biztonsági mentés elindítja a naplóváltást. Például, szeretnénk, hogy egy önálló teljes biztonsági mentés, mint ez:

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

mint látható, az rman 2 redo naplót archivált a teljes biztonsági mentés előtt és után. Ezek kisebbek, mint a meghatározott méret.

C. Hogyan lehet ellenőrizni az archív napló méretét?

most térjünk vissza a fő témánkhoz, hogyan ellenőrizhetjük az archív napló méretét az adatbázisban?

az egyes Archivált naplók mérete

az egyes archivált naplók méretének megtekintéséhez lekérdezzük A V$ARCHIVED_LOG fájlt:

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
...

a méret minden egyes archív napló lehet számítani szorozva blokkok BLOCK_SIZE oszlop. Továbbá csak az archivált naplókat számítottuk ki, amelyek 24 órán belül elkészültek és elérhetők az elsődleges adatbázisban.

mint látható, nem minden archív napló azonos méretű, a legtöbb archivált napló 1024 MB (azaz 1 GB).

az összes archivált napló mérete

minden elérhető

az elsődleges adatbázis-kiszolgálón elérhető archivált naplók teljes méretének megtekintéséhez a következőket tehetjük:

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

mint láthatjuk, több mint 400 GB archivált naplónk van, mostantól agresszívebben kell törölnünk őket.

utolsó 24 óra

az elsődleges adatbázis-kiszolgálón az elmúlt 24 órában elérhető összes archivált napló méretének összegzéséhez ezt tehetjük:

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

hozzáadtunk egy szűrőt az archivált naplók időtartamának korlátozására.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.