物理備份直接復制Oracle數據庫的物理文件(數據文件、控制文件、歸檔日志等),是Oracle推薦的底層備份方式,適合大規模數據庫環境。
BACKUP DATABASE)、增量備份(BACKUP INCREMENTAL LEVEL 1 DATABASE,僅備份自上次備份以來變化的數據塊)、差異備份(BACKUP DIFFERENTIAL DATABASE,備份自上次全庫備份以來變化的數據)及歸檔日志備份(BACKUP ARCHIVELOG ALL,記錄所有數據變更,用于恢復到任意時間點)。RMAN具備壓縮(WITH COMPRESSION)、加密、自動校驗備份完整性等功能,可通過腳本結合crontab實現自動化。cp -r /u01/oracle/oradata /backup/location),操作簡單但需停機,適合維護窗口內的定期備份。ALTER TABLESPACE tablespace_name BEGIN BACKUP),備份完成后結束模式(ALTER TABLESPACE tablespace_name END BACKUP)。熱備份無需停機,但需確保備份過程中數據一致性。邏輯備份將數據庫中的邏輯對象(表、視圖、存儲過程等)導出為可讀的文本文件,適合數據遷移或選擇性恢復。
EXP導出數據(如exp system/password@SID file=full.dmp full=y),IMP導入數據(如imp system/password@SID file=full.dmp full=y),但效率較低,適合小規模數據庫。PARALLEL=4)、壓縮(COMPRESSION=YES)、過濾對象(INCLUDE=TABLE:"LIKE 'EMP%'")等功能。導出命令示例:expdp system/password@SID directory=dpump_dir dumpfile=full.dmp full=y;導入命令示例:impdp system/password@SID directory=dpump_dir dumpfile=full.dmp full=y。通過腳本或定時任務減少人工干預,確保備份一致性。
rman_backup.sh),實現備份、壓縮、清理過期備份(如find /backup -name "*.dmp" -mtime +7 -delete)等操作。crontab -e設置定時執行腳本,例如每天凌晨2點執行全備腳本:0 2 * * * /path/to/rman_backup.sh;每周日凌晨3點執行增量備份腳本:0 3 * * 0 /path/to/incremental_backup.sh。借助專業備份軟件實現更高級的功能(如集中管理、云存儲集成、數據去重)。
通過實時數據同步實現災備,是Oracle企業級高可用解決方案。
ALTER DATABASE FORCE LOGGING)、歸檔模式(ALTER DATABASE ARCHIVELOG);設置歸檔日志目的地(LOG_ARCHIVE_DEST_2指向備庫);生成備用控制文件(ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/backup/standby.ctl');配置DataGuard參數(DB_UNIQUE_NAME、DG_CONFIG、LOG_ARCHIVE_CONFIG)。以上策略可根據數據庫規模、業務需求(如RTO/RPO要求)、性能預算選擇組合使用,例如:小型數據庫可采用RMAN全備+增量備份+crontab自動化;大型企業數據庫可采用RMAN+Data Guard+第三方工具的高可用方案。