Database
 sql >> Datenbank >  >> RDS >> Database

Tablespace SYSMGMTDATA ist FULL im Grid Infrastructure Management Repository (MGMTDB)

MGMTDB ist eine neue Datenbankinstanz, die zum Speichern von Cluster Health Monitor (CHM)-Daten verwendet wird.

In Oracle 11g wurden diese Informationen in der Berkley-Datenbank (.bdb-Dateien) in $GRID_HOME/crf/db/hostname gespeichert, aber ab Oracle-Datenbank 12c ist sie als einzelne Oracle-Instanz konfiguriert.

In Oracle 12.1.0.1 ist das Grid Infrastructure Management Repository (GIMR) optional.

In Oracle 12.1.0.2 ist es obligatorisch und es wird nicht unterstützt, es abzuschalten, mit Ausnahme von 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

Untenstehende Warnmeldung vom Grid Control des SYSMGMTDATA-Tabellenbereichs mit 91 % Belegung:

Die im oraEMNGAlert-Trap enthaltenen Variablen.
oraEMNGEventTargetName =-MGMTDB_exadb015.PDB_CLUSTER
oraEMNGEventMessage =Der Tablespace SYSMGMTDATA ist mit 91.314453125 belegt .
oraEMNGEventSeverityCode =KRITISCH
oraEMNGEventReportedTime =31. Mai 2020 19:31:27 BRT
oraEMNGEventCategories =Kapazität
oraEMNGEventType =Metrikwarnung
oraEMNGEventTargetType =Plug-fähige Datenbank
oraEMNGEventHostName =exadb015
oraEMNGEventTargetVersion =12.1.0.2.0
oraEMNGEventUserDefinedTgtProp =Operating System=Linux, Platform=x86_64,
oraEMNGEventRuleName =Tablespace, Tablespace

Überprüfen Sie das aktuelle CHM-Repository:


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

Der Fehler tritt auf, weil die Ressource offline ist:


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

Aktivieren Sie die Ressource ora.crf:


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

Starten Sie die Ressource ora.crf manuell mit dem folgenden Befehl:


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

Ressource ist online:


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

Zeigt den Status der aktuellen Konfiguration an:


# 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

Überprüfen Sie das aktuelle CHM-Repository:


# 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

Größe der Datendatei ändern. Ich habe die Größe von 2048 M auf 3072 M erhöht:


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

Andere Möglichkeiten, das Platzproblem im Tablespace SYSMGMTDATA in der GIMR-Datenbank zu lösen:

– Verschieben Sie das GIMR-Repository in einen anderen gemeinsam genutzten Speicher (Diskgroup, CFS oder NFS usw.) gemäß Dokument-ID 1589394.1.

– Abschneiden der großen Tabellen im Besitz von CHM gemäß Doc ID 2177879.1.

Normalerweise können die folgenden zwei Tabellen abgeschnitten werden:


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

Die Trace-Dateien der Instanz MGMTDB finden Sie standardmäßig unter:


$DIAG_HOME/_mgmtdb/-MGMTDB/trace