2.9.2.3 Oracle Exadata System Softwareリリース11.2.3.2.1以上を実行するシステムでの、非ルートLVMパーティションの縮小

Oracle Exadata System Softwareリリース11.2.3.2.1以降を実行しているシステムでは、ルート以外(/u01)のパーティションサイズを縮小できます。

ノート:

  • この手順では、サーバーを停止する必要はありません。

  • この手順を実行する前に、ファイル・システムをバックアップすることをお薦めします。

  1. dfコマンドを使用して、/u01パーティションの空き領域および使用済領域の容量を確認します。
    # df -h /u01
    

    次に、出力の例を示します。

    Filesystem                    Size  Used Avail Use% Mounted on
    /dev/mapper/VGExaDb-LVDbOra1  193G   25G  159G  14% /u01
    
  2. lvmコマンドを使用して、/u01ファイル・システムで使用される現在の論理ボリューム構成を表示します。

    この例では、LVDbSys2 (サイズは30.00 GB)をdbserver_backup.shスクリプトで作成できるように、LVDbOra1パーティションのサイズを縮小する必要があります。

    # lvm vgdisplay VGExaDb -s
      "VGExaDb" 271.82 GB [250.04 GB used / 21.79 GB free]
    
    # lvm lvscan
      ACTIVE            '/dev/VGExaDb/LVDbSys1' [30.00 GB] inherit
      ACTIVE            '/dev/VGExaDb/LVDbSwap1' [24.00 GB] inherit
      ACTIVE            '/dev/VGExaDb/LVDbOra1' [196.04 GB] inherit
    
  3. /u01を使用するソフトウェアを停止します。

    次のソフトウェアは、通常/u01を使用します。

    • Oracle ClusterwareOracle ASMおよびOracle Database

      # Grid_home/bin/crsctl stop crs
      
    • Trace File Analyzer

      # Grid_home/bin/tfactl stop
      
    • OS Watcher (11.2.3.3.0より前のリリース)

      # /opt/oracle.oswatcher/osw/stopOSW.sh
      
    • ExaWatcher (リリース11.2.3.3.0以上)

      # /opt/oracle.ExaWatcher/ExaWatcher.sh --stop
      
    • Oracle Enterprise Managerエージェント

      (oracle)$ agent_home/bin/emctl stop agent
      
  4. rootユーザーとしてパーティションをアンマウントします。
    # umount /u01
    

    ノート:

    umountコマンドでファイル・システムがビジーとレポートされた場合、umountコマンドを正常に実行するには、fuser(1)コマンドを使用して、停止する必要があるファイル・システムにまだアクセスしているプロセスを特定します。

    # umount /u01
    umount: /u01: device is busy
    umount: /u01: device is busy
    
    # fuser -mv /u01
    
            USER      PID ACCESS COMMAND
    /u01:   root     6788 ..c..  ssh
            root     8422 ..c..  bash
            root    11444 ..c..  su
            oracle  11445 ..c..  bash
            oracle  11816 ....m  mgr
            root    16451 ..c..  bash
  5. ファイル・システムを確認します。
    # e2fsck -f /dev/VGExaDb/LVDbOra1
    
    fsck 1.39 (29-May-2006)
    e2fsck 1.39 (29-May-2006)
    Pass 1: Checking inodes, blocks, and sizes
    Pass 2: Checking directory structure
    Pass 3: Checking directory connectivity
    Pass 4: Checking reference counts
    Pass 5: Checking group summary information
    DBORA: 72831/25706496 files (2.1% non-contiguous), 7152946/51389440 blocks
    
  6. 必要なサイズ(次の例では120G)までファイル・システムのサイズを縮小します。
    # resize2fs /dev/VGExaDb/LVDbOra1 120G
    resize2fs 1.39 (29-May-2017)
    Resizing the filesystem on /dev/VGExaDb/LVDbOra1 to 26214400 (4k) blocks.
    The filesystem on /dev/VGExaDb/LVDbOra1 is now 26214400 blocks long.
    
  7. 目的のサイズまでLVMのサイズを縮小します。
    # lvm lvreduce -L 120G --verbose /dev/VGExaDb/LVDbOra1
        Finding volume group VGExaDb
      WARNING: Reducing active logical volume to 120.00 GB
      THIS MAY DESTROY YOUR DATA (filesystem etc.)
    Do you really want to reduce LVDbOra1? [y/n]: y
        Archiving volume group "VGExaDb" metadata (seqno 8).
      Reducing logical volume LVDbOra1 to 120.00 GB
        Found volume group "VGExaDb"
        Found volume group "VGExaDb"
        Loading VGExaDb-LVDbOra1 table (253:2)
        Suspending VGExaDb-LVDbOra1 (253:2) with device flush
        Found volume group "VGExaDb"
        Resuming VGExaDb-LVDbOra1 (253:2)
        Creating volume group backup "/etc/lvm/backup/VGExaDb" (seqno 9).
      Logical volume LVDbOra1 successfully resized
    
  8. パーティションをマウントします。
    # mount -t ext3 /dev/VGExaDb/LVDbOra1 /u01
    
  9. 領域が縮小されたことを確認します。
    # df -h /u01
    Filesystem                    Size  Used Avail Use% Mounted on
    /dev/mapper/VGExaDb-LVDbOra1  119G   25G   88G  22% /u01
    
    # lvm vgdisplay -s
      "VGExaDb" 271.82 GB [174.00 GB used / 97.82 GB free]
    
  10. 次のように、ステップ3で停止したソフトウェアを再起動します。
    • Oracle ClusterwareOracle ASMおよびOracle Database

      # Grid_home/bin/crsctl start crs
      
    • Trace File Analyzer

      # Grid_home/bin/tfactl start
      
    • OS Watcher (11.2.3.3.0より前のリリース)

      # /opt/oracle.cellos/vldrun -script oswatcher
      
    • ExaWatcher (リリース11.2.3.3.0からリリース18.1.x)

      # /opt/oracle.cellos/vldrun -script oswatcher
      
    • ExaWatcher (リリース19.0.0.0以上)

      # systemctl start ExaWatcher
    • Oracle Enterprise Managerエージェント

      (oracle)$ agent_home/bin/emctl start agent