🔧 Advanced DBA Commands: Data Guard, GoldenGate, and More
This guide is a comprehensive cheat sheet for Oracle DBAs covering ADRCI, ASMCMD, CRSCTL, DGMGRL, Flashback, Job Scheduling, SRVCTL, GoldenGate, OPatch, Auditing, RMAN, and Stats Gathering commands.
📁 ADRCI Commands in Oracle
ADRCI (Automatic Diagnostic Repository Command Interpreter) is used to manage Oracle diagnostic data.
# Show current ADR base location
adrci> show base
# Set new ADR base
adrci> set base /u01/app/grid
# View alert logs
adrci> show alert
adrci> show alert -tail 100
# Purge alerts and trace files
adrci> purge -age 600 -type ALERT
adrci> purge -age 600 -type TRACE
adrci> purge -age 10080 -type cdump
# Set control policies
adrci> set control (SHORTP_POLICY = 240)
adrci> set control (LONGP_POLICY = 600)
# Create incident package
adrci> ips create package incident
adrci> ips generate package 2 in /home/dbaclass/housekeeping
🧱 ASMCMD Commands
ASMCMD is a command-line utility to manage ASM (Automatic Storage Management).
# List all diskgroups
ASMCMD> lsdg
# List ASM disks
ASMCMD> lsdsk -k -G CDATA
# Unmount diskgroup
ASMCMD> umount ARCH
# Mount diskgroup
ASMCMD> mount ARCH
# Rebalance diskgroup
ASMCMD> rebal --power 8 ARCH
🧩 CRSCTL Commands
CRSCTL is used to manage Oracle Clusterware components.
# Start/Stop CRS
crsctl start crs
crsctl stop crs
# Check CRS status
crsctl check crs
# Find cluster name and version
crsctl query crs softwareversion
# Replace voting disk
crsctl replace votedisk +OCRVD
🌐 DGMGRL Commands for Data Guard
DGMGRL is used to configure and manage Data Guard Broker.
-- Enable DG Broker
ALTER SYSTEM SET DG_BROKER_START=TRUE SCOPE=BOTH;
-- Create configuration
DGMGRL> CREATE CONFIGURATION 'PROD_DG' AS PRIMARY DATABASE IS 'PRIMDB' CONNECT IDENTIFIER IS PRIMDB;
-- Add standby
DGMGRL> ADD DATABASE 'STYDB' AS CONNECT IDENTIFIER IS STYDB MAINTAINED AS PHYSICAL;
-- Switchover
DGMGRL> switchover to STYDB;
🕰️ Flashback Database Commands
-- Enable Flashback
ALTER SYSTEM SET db_recovery_file_dest='/path' SCOPE=BOTH;
ALTER DATABASE FLASHBACK ON;
-- Create restore point
CREATE RESTORE POINT FLASHBACK_PREP GUARANTEE FLASHBACK DATABASE;
-- Flashback to restore point
FLASHBACK DATABASE TO RESTORE POINT FLASHBACK_PREP;
ALTER DATABASE OPEN RESETLOGS;
🕹️ Scheduler Job Commands
-- Create schedule
BEGIN
DBMS_SCHEDULER.CREATE_SCHEDULE(...);
END;
-- Create program
BEGIN
DBMS_SCHEDULER.CREATE_PROGRAM(...);
END;
-- Create job
BEGIN
DBMS_SCHEDULER.CREATE_JOB(...);
END;
-- Run/Enable/Disable/Drop job
EXEC DBMS_SCHEDULER.RUN_JOB('JOB_NAME');
EXEC DBMS_SCHEDULER.ENABLE('JOB_NAME');
EXEC DBMS_SCHEDULER.DISABLE('JOB_NAME');
EXEC DBMS_SCHEDULER.DROP_JOB('JOB_NAME');
⚙️ SRVCTL Commands
SRVCTL is used to manage resources in Oracle RAC.
# Start/Stop database
srvctl start database -d DBNAME -o open
srvctl stop database -d DBNAME -o immediate
# Manage services
srvctl add service -d DBNAME -s SERVICE_NAME -r "INST1,INST2"
srvctl start service -d DBNAME -s SERVICE_NAME
🪄 GoldenGate OBEY Command
# Create obey file
vi addtran.oby
# Add commands
dblogin USERID ggate, PASSWORD ggate123
add trandata dbaclass.TEST3
# Execute
GGSCI> obey addtran.oby
Nested OBEY Example:
ALLOWNESTED
obey infotran1.oby
obey infotran2.oby
🔧 OPatch Commands
# List patches
$ORACLE_HOME/OPatch/opatch lsinventory
# Apply a patch
$ORACLE_HOME/OPatch/opatch apply
# Rollback a patch
$ORACLE_HOME/OPatch/opatch rollback -id PATCH_ID
🔍 Oracle Auditing
-- Enable auditing
ALTER SYSTEM SET audit_trail=db SCOPE=SPFILE;
-- Audit DML actions
AUDIT SELECT, INSERT, UPDATE ON schema.table BY USER;
-- Unified Auditing
CREATE AUDIT POLICY test_policy ACTIONS CREATE TABLE;
AUDIT POLICY test_policy;
💾 RMAN Backup Commands
# Full backup
BACKUP AS COMPRESSED BACKUPSET INCREMENTAL LEVEL 0 DATABASE PLUS ARCHIVELOG;
# Archive log backup
BACKUP ARCHIVELOG ALL DELETE INPUT;
# Delete old archives
DELETE NOPROMPT ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-1';
📊 DB Statistics Commands
-- Gather stats
EXEC DBMS_STATS.GATHER_DATABASE_STATS(estimate_percent => 15);
-- Export stats
EXEC DBMS_STATS.EXPORT_TABLE_STATS(...);
-- Lock stats
EXEC DBMS_STATS.LOCK_TABLE_STATS('SCHEMA','TABLE');
📌 Summary
This comprehensive list of advanced DBA commands acts as a handy reference for DBAs working on:
- Oracle RAC
- ASM
- Data Guard
- RMAN backups
- GoldenGate
- Scheduler jobs
- Flashback
- System audits
Want a downloadable Markdown version or a split-by-section blog post? Just ask!
Would you like this as separate blog entries per topic or a single blog post?