sql >> データベース >  >> RDS >> Database

表スペースSYSMGMTDATAがグリッド・インフラストラクチャ管理リポジトリ(MGMTDB)でいっぱいです

    MGMTDBは、Cluster Health Monitor(CHM)データを格納するために使用される新しいデータベースインスタンスです。

    Oracle 11gでは、この情報はBerkleyデータベース(.bdbファイル)の$ GRID_HOME / crf / db / hostnameに格納されていましたが、Oracleデータベース12c以降では、Oracleシングルインスタンスとして構成されています。

    Oracle 12.1.0.1では、グリッドインフラストラクチャ管理リポジトリ(GIMR)はオプションです。

    Oracle 12.1.0.2では必須であり、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
    

    以下のアラート警告は、91%が占有されているSYSMGMTDATAテーブルスペースのグリッドコントロールから受信しました:

    oraEMNGAlertトラップに含まれる変数。
    oraEMNGEventTargetName= -MGMTDB_exadb015.PDB_CLUSTER
    oraEMNGEventMessage =SYSMGMTDATAテーブルスペースは91.314453125を占有しています
    oraEMNGEventSeverityCode = CRITICAL
    oraEMNGEventReportedTime=2020年5月31日19:31:27BRT
    oraEMNGEventCategories=容量
    oraEMNGEventType=メトリックアラート
    oraEMNGEventTargetType=プラガブルデータベース
    oraEMNGEventHostName =exadb015
    oraEMNGEventTargetVersion =12.1.0.2.0
    oraEMNGEventUserDefinedTgtProp =Operating System =Linux、Platform =x86_64、
    oraEMNGEventRuleName =テーブルスペース、テーブルスペース

    現在のCHMリポジトリを確認してください:

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

    リソースがオフラインであるため、エラーが発生します:

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

    ora.crfリソースを有効にします:

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

    以下のコマンドを使用して、ora.crfリソースを手動で開始します。

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

    リソースはオンラインです:

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

    現在の構成のステータスを表示します:

    
    # 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
    
    

    現在のCHMリポジトリを確認してください:

    
    # 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
    
    

    データファイルのサイズを変更します。サイズを2048Mから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.
    
    

    GIMRデータベースの表領域SYSMGMTDATAのスペースの問題を解決する他の方法:

    – Doc ID 1589394.1に従って、GIMRリポジトリを別の共有ストレージ(ディスクグループ、CFS、NFSなど)に移動します。

    – Doc ID 2177879.1に従って、CHMが所有する大きなテーブルを切り捨てます。

    通常、以下の2つのテーブルは切り捨てることができます:

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

    インスタンスMGMTDBのトレースファイルは、デフォルトで次の場所にあります。

    
    $DIAG_HOME/_mgmtdb/-MGMTDB/trace
    
    

    1. Oracleでのカンマ区切り値の分割

    2. ASP.NET Core MVC、Entity Framework Core、およびSQLServerを使用したCRUD操作

    3. 複数のテーブルからのSQLINSERTINTO

    4. postgreSQLで配列内部インデックスにアクセスする方法は?