linux下oracle热备份脚本

本文介绍了一个用于Oracle数据库备份的Shell脚本,包括数据文件及归档日志的备份过程。该脚本适用于Linux RedHat 5环境下的Oracle 10.2.0.1版本,通过SQL*Plus命令执行,实现数据库运行状态下的数据备份。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境:linux redhat 5     oracle 10.2.0.1 

备份脚本:open_backup.sql     所在目录:/u01/open_backup

脚本内容:



set feedback off pagesize 0 heading off verify off linesize 100 trimspool on
define dir='/u01/open_backup'
define fil='/u01/open_backup/open_backup_commands.sql'
define spo='&dir/open_backup_output.lst'
prompt *** Spooling to &fil
set serveroutput on
spool &fil
prompt spool &spo
prompt archive log list;;
prompt alter system switch logfile;;
DECLARE
  CURSOR cur_tablespace IS
    SELECT tablespace_name FROM dba_tablespaces WHERE status <> 'READ ONLY';
  CURSOR cur_datafile (tn VARCHAR) IS
    SELECT file_name
      FROM dba_data_files
  WHERE tablespace_name=tn;
  BEGIN
    FOR ct IN cur_tablespace LOOP
      dbms_output.put_line('alter tablespace '||ct.tablespace_name ||' begin backup;');
      FOR cd IN cur_datafile(ct.tablespace_name) LOOP
         dbms_output.put_line('host cp '||cd.file_name ||' &dir');
      END LOOP;
      dbms_output.put_line('alter tablespace '||ct.tablespace_name||' end backup;');
    END LOOP;
  END;
/
prompt alter system switch logfile;;
prompt alter database backup controlfile to '&dir/backup.ctl' REUSE;;
prompt archive log list;;
prompt spool off;;
spool off;
@&fil



经过测试,可以成功运行.

在数据库运行状态备份数据,运行sqlplus>@/u01/open_backup.sql 即可


如果需要备份参数文件的话:
如:
SQL> create pfile='/u01/open_backup/initorcl.ora' from spfile='/u01/app/oracle/product/10.2.0/db_1/dbs/spfileorcl.ora';





创建归档文件脚本:archive_backup.sql
目录:/u01/open_backup/archive/目录下:

内容:
define dir='/u01/open_backup/archive'
define fil='/u01/open_backup/archive/archive_backup_commands.sql'
spool &fil
prompt archive log next;;
select 'host mv '||name ||' &dir'
from v$archived_log
where completion_time>=trunc(sysdate)-1
 and completion_time  spool off;
@&fil


在数据库open下执行
SQL>@/u01/open_backup/archive/archive_backup.sql

即可

把昨天的归档的所有日志移动到/u01/open_backup/archive/目录下


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12778571/viewspace-201898/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/12778571/viewspace-201898/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值