Oracle Live

14/11/2018

Sistemas – ipcs – Gestion de semaforos

Filed under: Recuperacion DB — mogukiller @ 2:54 pm

Para la monitorización del uso de semáforos utilizo los siguientes comandos:

'nota: Limites de semaforos'
[usodbms@enhol260 ~]$  ipcs -al
/*
------ Shared Memory Limits --------
max number of segments = 4096
max seg size (kbytes) = 449023254
max total shared memory (kbytes) = 449023252
min seg size (bytes) = 1

------ Semaphore Limits --------
max number of arrays = 256
max semaphores per array = 1024
max semaphores system wide = 60000
max ops per semop call = 1024
semaphore max value = 32767

------ Messages: Limits --------
max queues system wide = 2878
max size of message (bytes) = 8192
default max size of queue (bytes) = 65536
*/
'nota: Configuracion actual'
[usodbms@enhol260 ~]$ sysctl kernel.sem
kernel.sem = 1024       60000   1024    256

'nota: Ocupacion actual'
[usodbms@enhol260 ~]$ ipcs -su
/*
------ Semaphore Status --------
used arrays = 118
allocated semaphores = 64255
*/
Anuncios

31/10/2018

Database – Remove Chained Rows

Filed under: Database — mogukiller @ 3:51 pm
Tags:

Hay que diferenciar entre chained rows y migrated rows. La primera se origina cuando un registro no cabe en un bloque y es necesario originar bloques encadenados para almacenar el bloque. El segundo se origina cuando se hace un update del registro y el resultado no cabe en el bloque, ahí Oracle genera un puntero y mueve el registro a un bloque nuevo.

A continuación muestro 3 posibles opciones para limpiar las filas migradas:

(more…)

24/10/2018

DATABASE – Resize database -MGMTDB

Filed under: Database — mogukiller @ 12:14 pm
Tags:

Cuando queremos crearnos una maqueta de 12.2 no podemos prescindir del repositorio de Cluster Health Monitor, la base de datos -MGMTDB. Para crear esta base de datos el instalador requiere de 40GB de diskgroup.
A continuación os dejo el procedimiento para hacer el resize de esa base de datos y dejarla en unos 3G.

Version: 12.2.0.1

Referencias:
	MDBUtil: GI Management Repository configuration tool (Doc ID 2065175.1)
	How to Move/Recreate GI Management Repository (GIMR / MGMTDB) to Different Shared Storage (Diskgroup, CFS or NFS etc) (Doc ID 1589394.1)

-- Deshabilitamos CHM
crsctl stop res ora.crf -init
crsctl modify res ora.crf -attr ENABLED=0 -init


ALTER SESSION SET CONTAINER = GIMR_DSCREP_10;

CREATE USER MOGU identified by temporal1;
GRANT CONNECT TO MOGU;
GRANT DBA TO MOGU;

CREATE OR REPLACE DIRECTORY EXPORT AS '/export/home/oracle/export';
GRANT WRITE, READ ON DIRECTORY EXPORT TO MOGU;

GIMR_DSCREP_10 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.163.1.100)(PORT = 1525))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = gimr_dscrep_10)
    )
  )

-- como backup
expdp MOGU/temporal1@GIMR_DSCREP_10 dumpfile=exp_schema_cha.dmp  directory=export nologfile=yes schemas=CHA
ALTER SESSION SET CONTAINER = GIMR_DSCREP_10;
DROP USER CHA CASCADE;
DROP TABLESPACE SYSMGMTDATACHAFIX INCLUDING CONTENTS AND DATAFILES;
CREATE TABLESPACE SYSMGMTDATACHAFIX DATAFILE SIZE 200M;
impdp MOGU/temporal1@GIMR_DSCREP_10 dumpfile=exp_schema_cha.dmp  directory=export nologfile=yes schemas=CHA;


GRANT READ ON SYS.V_$ASM_DISKGROUP  TO CHA; 
GRANT READ ON SYS.V_$EVENT_NAME     TO CHA; 
GRANT READ ON SYS.V_$SESSION        TO CHA; 
GRANT READ ON SYS.DBA_DATA_FILES    TO CHA;
GRANT EXECUTE ON DBMS_CRYPTO   TO CHA;
GRANT EXECUTE ON DBMS_LOCK     TO CHA;
GRANT EXECUTE ON DBMS_SYSTEM   TO CHA;

ALTER PACKAGE CHA.CHA_CAL_DATA     COMPILE;
ALTER PACKAGE CHA.CHA_LCMGMT       COMPILE;
ALTER PACKAGE CHA.CHA_TEMP_MODEL   COMPILE;
ALTER PACKAGE CHA.FTE_MGMT         COMPILE;
ALTER PROCEDURE  CHA.GLOBAL_LOCK   COMPILE;


ALTER DATABASE DATAFILE '+DATA2/_MGMTDB/78F606F9409B08BDE054080027A68F12/DATAFILE/sysmgmtdata.282.990353579' RESIZE 200M;
ALTER DATABASE DATAFILE '+DATA2/_MGMTDB/78F606F9409B08BDE054080027A68F12/DATAFILE/syscalogdata.281.990353553' RESIZE 100M;
ALTER DATABASE DATAFILE '+DATA2/_MGMTDB/78F606F9409B08BDE054080027A68F12/DATAFILE/sysmgmtdatadb.283.990353639' RESIZE 200M;

-- Redimensionamos los redologs.

ALTER DATABASE  ADD LOGFILE SIZE 100M;
ALTER DATABASE  ADD LOGFILE SIZE 100M;
ALTER DATABASE  ADD LOGFILE SIZE 100M;

ALTER DATABASE DROP LOGFILE GROUP 2;
ALTER DATABASE DROP LOGFILE GROUP 3;

alter system switch logfile;
alter system checkpoint;

ALTER DATABASE DROP LOGFILE GROUP 1;

Validamos el tamaño:

/*
Diskgroup / DB Name                      File Type                    Space MB Sys?
---------------------------------------- ------------------ ------------------ ----
+DATA2/ASM                               PASSWORD                            0    Y
****************************************                    ------------------
                                                                             0

+DATA2/clmds                             OCRFILE                           160    Y
                                         OCRBACKUP                           8    Y
                                         ASMPARAMETERFILE                    1    Y
****************************************                    ------------------
                                                                           169

+DATA2/_mgmtdb                           DATAFILE                        3,308    Y
                                         TEMPFILE                          246    Y
                                         ONLINELOG                         306    Y
                                         CONTROLFILE                        24    Y
                                         PARAMETERFILE                       1    Y
****************************************                    ------------------
                                                                         3,885

+DATA2/orapwasm                          PASSWORD                            0    N
****************************************                    ------------------
                                                                             0

+DATA2/orapwasm_backup                   PASSWORD                            0    N
****************************************                    ------------------
                                                                             0

                                                            ------------------
Grand Total:                                                             4,054
*/

-- Intentamos parar la instancia -MGMTDB

su - grid
export ORACLE_SID=-MGMTDB
SQL> shutdown immediate

crsctl status resurce ora.mgmtdb -p
srvctl disable mgmtdb



22/10/2018

Solaris – Limitar memoria zfs

Filed under: Sistemas — mogukiller @ 3:12 pm
Tags:

Para limitar el excesivo consumo de RAM por la cache del zfs de nuestros zpool haremos:

su -
vi /etc/system
set zfs:zfs_arc_max =  314572800

reboot

root@mogubedb11:~# echo ::memstat | mdb -k
Page Summary                 Pages             Bytes  %Tot
----------------- ----------------  ----------------  ----
Kernel                      182960            714.6M   12%
ZFS Metadata                 13896             54.2M    1%
ZFS File Data                68154            266.2M    4%
Anon                        326366              1.2G   21%
Exec and libs                21425             83.6M    1%
Page cache                   32237            125.9M    2%
Free (cachelist)               274              1.0M    0%
Free (freelist)             895057              3.4G   57%
Total                      1558671              5.9G

30/08/2018

DATAGUARD – Far Sync

Filed under: Dataguard,Laboratorios — mogukiller @ 2:23 pm
Tags:

Una de las nuevas funcionalidades de Dataguard en la versión 12.1.0.2 es que permite tener una instancia pivote a la que envía la información de redo de manera sincrona y esta instancia la distribuye entre el resto de las standby de manera asincrona. Esto permite configurar un Dataguard en maximun Availability entre CPDs alejados entre si.
(more…)

29/08/2018

DATAGUARD – BROKER. STANDBYS EN CASCADA

Filed under: Dataguard,Laboratorios — mogukiller @ 3:09 pm
Tags:

Una de las nuevas funcionalidades de Dataguard Broker en la 12c es que permite gestinar una configuración con standbys configuradas en cascada. Se puede dar el caso en el que la segunda standby este lo bastante lejos de la primaria que impida mantener un envio sincrono entre la primaria y esa standby. Podemos hacer una configuracion donde intervengan dos standbys una cerca de la primaria que realice una replicación sincrona y una segunda standby que reciba el redo de la primera standby en modo sincrono.

(more…)

27/05/2018

DATABASE – Validar si ORACLE_HOME esta creado para RAC o para Standalone

Filed under: Database — mogukiller @ 4:06 pm

Cuando no estamos seguros si un home de oracle pertenece a un RAC o se ha creado como Standalone podemos seguir los pasos de la siguiente nota:

Referencia: How to Check Whether Oracle Binary/Instance is RAC Enabled and Relink Oracle Binary in RAC (Doc ID 284785.1)

(more…)

16/04/2018

DATABASE – Materialized Views

Filed under: Database — mogukiller @ 10:19 am

Pongo un tutorial sencillo para la creacion y administracion de vistas materializadas. Hay mucho mas que cortar aqui. Pero para lo que necesito me sobra y me basta.
(more…)

11/04/2018

DATABASE – Access Control List (ACL)

Filed under: Database — mogukiller @ 11:56 am

Cuando quieres tener un control de quien y como se utilizan los paquetes que usan el protocolo TCP es necesario que configures en tu base de datos las listas de control de acceso o ACL.

Os dejo un pequeño laboratorio donde configuro y gestiono ACL en bases de datos version 12.1.0.2 y 11.2.0.4.

(more…)

22/03/2018

Database – Advanced Row Compression

Filed under: Database — mogukiller @ 1:40 pm

Recordar que habilitar la compresión de Advanced Row Compression requiere del licenciamiento de Advanced Compression.
Advance Row Compression esta destinada a entornos transaccionales OLTP o DatawareHouse.
Os dejo un pequeño manual para configurar ARC utilizando ALTER TABLE .. MOVE. Adicionalmente pongo como analizar previamente el ratio de compresion con DBMS_COMPRESSION o que tablas son susceptibles de comprimir utilizando Heat Maps.

(more…)

Página siguiente »

Crea un sitio web o blog en WordPress.com