@echo off REM Oracle Database Complete Cleanup Script REM Purpose: Remove all database files and services to restore DR VM to clean state REM Run as: Administrator REM Location: D:\oracle\scripts\cleanup_database.cmd set ORACLE_HOME=C:\Users\Administrator\Downloads\WINDOWS.X64_193000_db_home set ORACLE_SID=ROA set PATH=%ORACLE_HOME%\bin;%PATH% echo ============================================ echo Oracle Database Cleanup Script echo ============================================ echo. echo This script will: echo 1. Stop and delete Oracle service echo 2. Delete all database files (datafiles, control files, redo logs) echo 3. Delete local FRA (backups are on F:\, safe to delete) echo 4. Delete trace files echo 5. Leave VM in completely clean state (no service, no DB files) echo. echo WARNING: This will DELETE the entire database! echo Starting cleanup in 3 seconds... (Press Ctrl+C to cancel) timeout /t 3 /nobreak > nul REM Create temp directory if not exist D:\oracle\temp mkdir D:\oracle\temp if not exist D:\oracle\logs mkdir D:\oracle\logs echo. echo [1/6] Shutting down database (if running)... echo SHUTDOWN ABORT; > D:\oracle\temp\cleanup_shutdown.sql echo EXIT; >> D:\oracle\temp\cleanup_shutdown.sql sqlplus -s / as sysdba @D:\oracle\temp\cleanup_shutdown.sql > nul 2>&1 timeout /t 3 /nobreak > nul echo [2/6] Stopping and deleting Oracle service + registry + instance... REM Method 1: Use oradim to delete Oracle instance (recommended) set ORACLE_HOME=C:\Users\Administrator\Downloads\WINDOWS.X64_193000_db_home set PATH=%ORACLE_HOME%\bin;%PATH% oradim -delete -sid ROA >nul 2>&1 echo Oracle instance deleted with oradim REM Method 2: Delete service directly (backup method) sc query OracleServiceROA > nul 2>&1 if %errorlevel% equ 0 ( sc stop OracleServiceROA > nul 2>&1 timeout /t 2 /nobreak > nul sc delete OracleServiceROA > nul 2>&1 echo Oracle service deleted with sc ) REM Method 3: Delete Oracle registry keys (ensures clean state) reg delete "HKLM\SOFTWARE\ORACLE\KEY_OraDB19Home1" /v ORA_ROA_PFILE /f >nul 2>&1 reg delete "HKLM\SOFTWARE\ORACLE\KEY_OraDB19Home1" /v ORA_ROA_AUTOSTART /f >nul 2>&1 reg delete "HKLM\SOFTWARE\ORACLE\KEY_OraDB19Home1" /v ORA_ROA_SHUTDOWN /f >nul 2>&1 reg delete "HKLM\SOFTWARE\ORACLE\KEY_OraDB19Home1" /v ORA_ROA_SHUTDOWNTYPE /f >nul 2>&1 reg delete "HKLM\SOFTWARE\ORACLE\KEY_OraDB19Home1" /v ORA_ROA_SHUTDOWN_TIMEOUT /f >nul 2>&1 echo Registry keys cleaned timeout /t 2 /nobreak > nul echo [3/6] Deleting database files... echo Deleting datafiles... del /Q C:\Users\oracle\oradata\ROA\*.dbf 2>nul echo Deleting control files... del /Q C:\Users\oracle\oradata\ROA\*.ctl 2>nul echo Deleting redo logs... del /Q C:\Users\oracle\oradata\ROA\*.log 2>nul echo [4/6] Deleting local FRA (backups are on F:\)... if exist C:\Users\oracle\recovery_area\ROA ( rmdir /S /Q C:\Users\oracle\recovery_area\ROA 2>nul mkdir C:\Users\oracle\recovery_area\ROA echo FRA cleared ) else ( mkdir C:\Users\oracle\recovery_area\ROA 2>nul echo FRA directory created ) echo [5/6] Deleting trace files (to save space)... del /Q C:\Users\oracle\diag\rdbms\roa\ROA\trace\*.trc 2>nul del /Q C:\Users\oracle\diag\rdbms\roa\ROA\trace\*.trm 2>nul echo Trace files deleted echo. echo ============================================ echo Database Cleanup Complete! echo ============================================ echo. echo Current state: echo [YES] Oracle software installed echo [YES] PFILE exists (C:\Users\oracle\admin\ROA\pfile\initROA.ora) echo [NO] Oracle service (will be created during restore) echo [NO] Database files (will be restored from backups) echo [NO] Control files (will be restored from backups) echo [NO] Datafiles (will be restored from backups) echo. echo VM is now in COMPLETELY CLEAN STATE! echo. echo Next step: Run D:\oracle\scripts\rman_restore_from_zero.cmd echo (It will create the Oracle service and restore the database) echo.