renombrando un PDB

Hoy vamos a ver una entrada sencilla para un problema bastante comun.
Supongamos que queremos renombrar un PDB
Tenemus :

  • Nombre origina: OLDNAME
  • Nombre nuevo : NEWNAME

Los pasos a segir son muy sencillos

alter session set container=OLDNAME;

-- reiniciamos en modo restrict
shutdown immediate;
startup open restrict;
--cambiamos nombre
alter pluggable database OLDNAME rename global_name to NEWNAME;

--comprobamos
show con_name;
show pdbs;

--reiniciamos normal
shutdown immediate;
startup;

--vemos el resultado
select name,open_mode from v$pdbs;

Com podeis ver, altamente sencillo

Creando una base de datos en modo silent

Hoy vamos a ver otra de estas entradas para dummies que nos ahorraran mucho trabajo.
Vamos a cer el contenido de un sell scritp . En nuestro caso la queremos en ASM y los nombres de los diskgroups no son los estabdares de DATA,REDO y FRA, sino que llevan el nombre del HOSTNAME delante.

Asi pues, nuestro script sera algo similar a

[bash]

#!/bin/bash
export ORACLE_SID=$1
HOST=`hostname -a`
export ORACLE_HOSTNAME=${HOST^^}
export ORA_INVENTORY=`cat /etc/oraInst.loc |grep inventory_loc |tr "=" " " |awk ‘{print $2}’`

dbca -silent -createDatabase \
-templateName General_Purpose.dbc \
-gdbname ${ORACLE_SID} -sid ${ORACLE_SID} -responseFile NO_VALUE \
-sysPassword SysPassword1 \
-systemPassword SysPassword1 \
-characterSet WE8ISO8859P1 \
-nationalCharacterSet AL16UTF16 \
-createAsContainerDatabase false \
-automaticMemoryManagement false \
-databaseType MULTIPURPOSE \
-automaticMemoryManagement false \
-storageType ASM \
-datafileDestination +${ORACLE_HOSTNAME}_DATA \
-totalMemory 2048 \
-redoLogFileSize 521 \
-emConfiguration NONE \
-initParams "control_file_record_keep_time=30, control_files=+${ORACLE_HOSTNAME}_DATA’, control_files=+${ORACLE_HOSTNAME}_FRA, db_create_file_dest=+${ORACLE_HOSTNAME}_DATA, db_create_online_log_dest_1=+${ORACLE_HOSTNAME}_REDO1,db_create_online_log_dest_2=+${ORACLE_HOSTNAME}_REDO2,db_recovery_file_dest=+${ORACLE_HOSTNAME}_FRA, db_recovery_file_dest_size=90G , recyclebin=’OFF’ ,sessions=300,proceses=150" \
-ignorePreReqs
[/bash]

Trabajando con Huge pages

A partir de OEL7 deberiammos de chekquear las transparent huge pages

cat /sys/kernel/mm/transparent_hugepage/enabled
always madvise [never]

Igualmente , deberiamos de tenerlo configurado en el grub

sudo cat /boot/grub2/grub.cfg |grep trans
  set kernelopts="root=/dev/mapper/vg_main-lv_root ro console=tty0 no_timer_check biosdevname=0 rd.lvm.lv=vg_main/lv_root net.ifnames=0 transparent_hugepage=never "

Por el contrario, si no las hemos modificado ( situacion no deseada) , aparecera

cat /sys/kernel/mm/transparent_hugepage/enabled
[always] madvise never 

A partir de ahi, para ver las disponibles solo hay que ejecutar

test1$: grep Huge /proc/meminfo
AnonHugePages:    897024 kB
HugePages_Total:     220
HugePages_Free:      220
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB

Esto nos indica que teemos 220 paginas de 2048 Kb
Lo que significa que el espacio dedicado sera

Gb = 220*2048/1024/1024

Mas informacion en :