sql >> Base de Datos >  >> RDS >> Database

Tablespace SYSMGMTDATA está COMPLETO en el repositorio de administración de infraestructura de cuadrícula (MGMTDB)

MGMTDB es una nueva instancia de base de datos que se utiliza para almacenar datos de Cluster Health Monitor (CHM).

En Oracle 11g esta información se almacenaba en la base de datos Berkley (archivos .bdb), en $GRID_HOME/crf/db/hostname, pero a partir de la base de datos Oracle 12c se configura como Oracle Single Instance.

En Oracle 12.1.0.1, el Repositorio de administración de infraestructura de cuadrícula (GIMR) es opcional.

En Oracle 12.1.0.2 es obligatorio y no se admite desactivarlo con la excepción de Exadata.


# ps -ef |grep mdb_pmon
oracle 4961 4124 0 11:05 pts/2 00:00:00 grep --color=auto mdb_pmon
grid 40414 1 0 2018 ? 01:04:31 mdb_pmon_-MGMTDB

Debajo de la advertencia de alerta recibida del Grid Control del tablespace SYSMGMTDATA con 91% ocupado:

Las variables incluidas en la trampa oraEMNGAlert.
oraEMNGEventTargetName =-MGMTDB_exadb015.PDB_CLUSTER
oraEMNGEventMessage =El tablespace SYSMGMTDATA tiene 91.314453125 ocupados .
oraEMNGEventSeverityCode =CRÍTICO
oraEMNGEventReportedTime =31 de mayo de 2020 7:31:27 p. m. BRT
oraEMNGEventCategories =Capacidad
oraEMNGEventType =Alerta métrica
oraEMNGEventTargetType =Base de datos conectable
oraEMNGEventHostName =exadb015
oraEMNGEventTargetVersion =12.1.0.2.0
oraEMNGEventUserDefinedTgtProp =Sistema operativo=Linux, Plataforma=x86_64,
oraEMNGEventRuleName =Tablespace, Tablespace

Verifique el repositorio CHM actual:


# oclumon manage -get reppath
CRS-9001-internal error
CRS-9010-Error manage: mandatory data not supplied

El error ocurre porque el recurso está fuera de línea:


# crsctl stat res ora.crf -init
NAME=ora.crf
TYPE=ora.crf.type
TARGET=ONLINE
STATE=OFFLINE

Habilite el recurso ora.crf:


# cd /u01/app/12.1.0.2/grid/bin/
# ./crsctl modify res ora.crf -attr ENABLED=1 -init

Inicie el recurso ora.crf manualmente usando el siguiente comando:


# crsctl start res ora.crf -init
CRS-2672: Attempting to start 'ora.crf' on 'exadb015'
CRS-2676: Start of 'ora.crf' on 'exadb015' succeeded

El recurso está en línea:


# crsctl stat res ora.crf -init
NAME=ora.crf
TYPE=ora.crf.type
TARGET=ONLINE
STATE=ONLINE on exadb015

# crsctl stat res ora.mgmtdb -t
--------------------------------------------------------------------------------
Name Target State Server State details
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.mgmtdb
1 ONLINE ONLINE exadb015 Open,STABLE
--------------------------------------------------------------------------------

Muestra el estado de la configuración actual:


# srvctl config mgmtdb
Database unique name: _mgmtdb
Database name:
Oracle home: <CRS home>
Oracle user: grid
Spfile: +DG_OCRVOTING/_MGMTDB/PARAMETERFILE/spfile.268.886174866
Password file:
Domain:
Start options: open
Stop options: immediate
Database role: PRIMARY
Management policy: AUTOMATIC
Type: Management
PDB name: pdb_cluster
PDB service: pdb_cluster
Cluster name: pdb-cluster
Database instance: -MGMTDB

Verifique el repositorio CHM actual:


# oclumon manage -get reppath

CHM Repository Path = +DG_OCRVOTING/_MGMTDB/FD9B43BF6A646F8CE043B6A9E80A2815/DATAFILE/SYSMGMTDATA.269.886174975

# asmcmd ls -ls +DG_OCRVOTING/_MGMTDB/FD9B43BF6A646F8CE043B6A9E80A2815/DATAFILE/SYSMGMTDATA.269.886174975

Type Redund Striped Time Sys Block_Size Blocks Bytes Space Name
DATAFILE HIGH COARSE JUN 01 12:00:00 Y 8192 262145 2147491840 6467616768 SYSMGMTDATA.269.886174975

Cambiar el tamaño del archivo de datos. Aumenté el tamaño de 2048M a 3072M:


$ export ORACLE_SID=-MGMTDB
$ sqlplus / as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Mon Jun 1 13:32:46 2020

Copyright (c) 1982, 2014, Oracle. All rights reserved.

Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, Automatic Storage Management and Advanced Analytics options

sql> show pdbs;

CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB_CLUSTER READ WRITE NO

sql> alter session set container=PDB_CLUSTER;

Session altered.

sql> select TABLESPACE_NAME,FILE_NAME,AUTOEXTENSIBLE,BYTES/1024/1024 MB, MAXBLOCKS/1024/1024 from dba_data_files where TABLESPACE_NAME='SYSMGMTDATA';

TABLESPACE_NAME FILE_NAME AUT MB MAXBLOCKS/1024/1024
--------------- --------- ---- ------ --------------------
SYSMGMTDATA +DG_OCRVOTING/_MGMTDB/FD9B43BF6A646F8CE043B6A9E80A2815/DATAFILE/sysmgmtdata.269.886174975 NO 2048 0

sql> alter database datafile '+DG_OCRVOTING/_MGMTDB/FD9B43BF6A646F8CE043B6A9E80A2815/DATAFILE/sysmgmtdata.269.886174975' resize 3072m;

Database altered.

Otras formas de resolver el problema de espacio en el espacio de tabla SYSMGMTDATA en la base de datos GIMR:

– Mueva el repositorio GIMR a otro almacenamiento compartido (grupo de discos, CFS o NFS, etc.) según el ID de documento 1589394.1.

– Truncar las tablas grandes propiedad de CHM según Doc ID 2177879.1.

Normalmente, las dos tablas siguientes se pueden truncar:


sql> truncate table CHM.CHMOS_PROCESS_INT_TBL;
sql> truncate table CHM.CHMOS_DEVICE_INT_TBL;

Los archivos de seguimiento de la instancia MGMTDB se pueden encontrar de forma predeterminada en:


$DIAG_HOME/_mgmtdb/-MGMTDB/trace