(01)冷备份

来源:互联网 发布:上海软件开发公司排名 编辑:程序博客网 时间:2024/04/30 23:47
 Oracle备份恢复弄得蛮多的,不过记录得零零碎碎的,准备把它给整整,集中起来弄弄。

   先成冷备份说起。记得以前刚弄Oracle时,冷备份在单实例用得很多的,不过后面数据库的架构搞得越来越麻烦,RAC这类也很多了。冷备份才用的少了起来。不过有些场景还是蛮合适用它的。

1. 建立目录,并授权限Oracle用户,依实际数据库所在用户名为准,本例为oracle.
 mkdir -p /xcl/cold_backup/dbs
 chown -R oracle:oinstall /xcl ##可依id oracle查出查
2. 创建sql文件,用手执行备份
    参数文件如有改动参数,记得手工备份一份,平常就不需备份了。
   至于密码文件和tnsnames.ora 也可以加到.sh中。
    剩下的要备份的东东看下面的脚本。
 --/xcl/cold_exec.sql set feedback off heading off verify off trimspool off set pagesize 0 linesize 200 define dir = '/xcl/cold_backup' define cmdfile = '/xcl/cold_backup.sql' alter database backup controlfile to ' /xcl/cold_backup/backup_control.ctl' reuse; alter database backup controlfile to trace; prompt *** spooling to &cmdfile spool &cmdfile select 'host cp ' || name || ' &dir' from v$datafile order by 1; select 'host cp ' || member || ' &dir' from v$logfile order by 1; select 'host cp ' || name || ' &dir' from v$controlfile order by 1; select 'host cp ' || name || ' &dir' from v$tempfile order by 1; spool off; shutdown immediate; @&cmdfile startup; exit;
3. 创建SHELL文件,
 ##cold_startup.sh #!/bin/sh su - oracle -c " ##对应具体的用户名,本例中为"oracle" export ORACLE_SID=xcldb ##对应具体的数据库名,本例中为"xcldb" sqlplus / as sysdba @/xcl/colddb.sql "
4.在root用户下,执行备份  
   cd /xcl
   chmod +x *.sh
   ./cold_startup.sh

好了,搞定,手工执行足够了。  

MAIL:xcl_168@aliyun.com
Blog:http://blog.csdn.net/xcl168

0 0
原创粉丝点击