Managing Oracle Exadata Storage Servers (cells) requires precise handling, especially when performing shutdown or reboot operations. Improper steps can lead to ASM deactivation, impacting database availability. This guide explains how to safely shut down or restart an Exadata storage server without affecting ASM disk group availability, following best practices aligned with Oracle Support Doc.
📌 Overview
Oracle ASM is designed for high availability, but if a storage cell is shut down without preparation, it can cause ASM diskgroups to become offline, affecting databases. This procedure ensures graceful deactivation and reactivation of grid disks and validates ASM behavior before and after cell operations.
🔧 Step-by-Step: How to Shut Down or Reboot an Exadata Storage Server
✅ Step 1: Check and Set ASM disk_repair_time Attribute
Ensure that all relevant diskgroups have a proper grace period for offline disks (e.g., 8.5 hours):
sql
SELECT dg.name, a.value
FROM v$asm_diskgroup dg, v$asm_attribute a
WHERE dg.group_number = a.group_number
AND a.name = 'disk_repair_time';
Set the disk_repair_time if not already configured:
sql
ALTER DISKGROUP DATA_udxd SET ATTRIBUTE 'DISK_REPAIR_TIME' = '8.5H';
ALTER DISKGROUP DBFS_DG SET ATTRIBUTE 'DISK_REPAIR_TIME' = '8.5H';
ALTER DISKGROUP RECO_udxd SET ATTRIBUTE 'DISK_REPAIR_TIME' = '8.5H';
✅ Step 2: Check ASM Deactivation Status on Grid Disks
Run the following to ensure each grid disk is safe to deactivate: bash cellcli -e “LIST griddisk ATTRIBUTES name, asmmodestatus, asmdeactivationoutcome” 🔹 asmdeactivationoutcome must return Yes for each disk. 🔸 If any disk returns No, wait until ASM synchronization completes before proceeding. sqlALTERSYSTEMSET dg_broker_config_file1 =’+Disk_Grp1/DB_Stdby/dr1DB_Prim.dat’SCOPE=BOTH SID=’*’;ALTER SYSTEM SET dg_broker_config_file2 = ‘+Disk_Grp2/DB_Stdby/dr2DB_Prim.dat’ SCOPE=BOTH SID=’*’;✅ Step 3: Inactivate All Grid Disks on the Target Cell
This step gracefully detaches the grid disks from ASM:
bashcellcli -e “ALTER griddisk ALL INACTIVE”
✅ Step 4: Validate Deactivation
Recheck the status to confirm disks are inactive:
bashcellcli -e "LIST griddisk ATTRIBUTES name, asmmodestatus, asmdeactivationoutcome"cellcli -e "LIST griddisk"
You should see the disks in an INACTIVE state.
✅ Step 5: Shut Down or Reboot the Cel
Reboot the storage server:
bashshutdown -F -r now
Shutdown the storage server:
bashshutdown -h now
✅ Step 6: Reactivate Grid Disks After Boot
Once the server is back online, re-enable the grid disks:
bashcellcli -e "ALTER griddisk ALL ACTIVE"
✅ Step 7: Post-Activation Check
Validate the reactivation status:
bashcellcli -e “LIST griddisk”cellcli -e “LIST griddisk ATTRIBUTES name, asmmodestatus”Disks should now appear in ONLINE and ACTIVE state.
⚠️ Important Note Before Repeating on Another Cell
Before you shut down the next storage server, ensure ASM synchronization has completed for the cell that was just restarted.
If synchronization is still in progress, you will see asmdeactivationoutcome = No, and proceeding will risk diskgroups going offline.
✅ Summary
Step Description 1 Set disk_repair_time 2 Check asmdeactivationoutcome = Yes 3 Inactivate grid disks 4 Validate deactivation 5 Shutdown or reboot the cell 6 Reactivate grid disks 7 Check ASM status


