Usar un Disco de Google Compute Engine para respaldos de RMAN

Consejo Breve

Cuando trabajas con tus bases de datos Oracle en tus virtual machines de la Google Cloud Platform seguramente necesitarás hacer varios respaldos con RMAN con el fin de restaurar tus datos cuando se necesite.
Si tu respaldo es importante y quieres preservarlo por largo tiempo lo mejor será que lo mandes a tu Cloud Storage Bucket.

Pero cuando tu respaldo es de corto plazo, por ejemplo para duplicar una instancia o cuando requieres mantener espacio libre en tu recovery area pero quieres conservar los archive logs de días pasados para tus pruebas, entonces necesitas una alternativa.

Una solución fácil será guardar esos respaldos de RMAN en un disco independiente que puedas agregar y separar cada vez que requieras hacer un backup o restore de tus tablespaces, archive logs o de la base completa.

Agregar tu Disco de Respaldo a tu VM Instance de Base de Datos

En Google Cloud Platform - Compute Engine - VM Instances - your instance

  • Edit
    • + Attach existing disk
      • Disk: oraclerman
      • Mode: Read/write
      • Deletion rule: Keep disk

Dentro de tu máquina virtual:

[oracle@patoracle ~]$ sudo lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0   20G  0 disk
├─sda1   8:1    0  200M  0 part /boot/efi
└─sda2   8:2    0 19.8G  0 part /
sdb      8:16   0  100G  0 disk

[oracle@patoracle ~]$ sudo mount -o discard,defaults /dev/sdb /rman

[oracle@patoracle ~]$ cd /rman

[oracle@patoracle rman]$ ls
controlfile  lost+found  respaldo

Ahora ya tienes disponible el disco con tus respaldos para restaurarlos o puedes hacer más respaldos de tus objetos a este disco, por ejemplo RMAN> restore controlfile from "/rman/controlfile/c-1820073908-2020...

Disco Nuevo para RMAN

Si esta es la primera vez que quieres un disco para tus respaldos de RMAN, tienes que crear un disco en blanco antes de añadirlo:

En Google Cloud Platform -> Compute Engine -> Disks -> Create Disk

  • Name: oraclerman
  • Type: Standard persistent disk
  • Source type: Blank Disk
  • Size: 100 GB

Y también tienes que formatear el disco, crear el directorio de montaje y assignarle permisos, previo a montarlo:

[oracle@patoracle ~]$ sudo lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0   20G  0 disk
├─sda1   8:1    0  200M  0 part /boot/efi
└─sda2   8:2    0 19.8G  0 part /
sdb      8:16   0  100G  0 disk

[oracle@patoracle ~]$ sudo mkfs.ext4 -m 0 -E lazy_itable_init=0,lazy_journal_init=0,discard /dev/sdb

mke2fs 1.42.9 (28-Dec-2013)
/dev/sdc is entire device, not just one partition!
Proceed anyway? (y,n) y

Writing superblocks and filesystem accounting information: done

[oracle@patoracle ~]$ sudo mkdir /rman

[oracle@patoracle ~]$ sudo chown oracle:oinstall /rman