冷备份

备份

直接拷贝oracle目录下的admin、oradata(datafile, controlfile,redo)、flash_recovery_area三个文件夹,db_1目录下database(PWDfile、pfile)、dbs(spfile)、NETWORK/ADMIN(listener.ora、tnsnames.ora),到其他存储实现备份。

恢复

方法一:最简单的方法(需建库)

1.创建一个和原来一样的数据库。(安装路径和数据库名必须和原来一致)
2.停止数据库 shutdown immediate;
3. 复制安装目录下的admin、oradata、flash_recovery_area覆盖,复制database(PWDfile、pfile) 覆盖
4. 启动数据库 startup;

方法二:(不需建库,稍麻烦点)

(1):操作系统重装,如果做冷备恢复,要保证相同操作系统,相同的数据库版本。
(2):正常安装oracle软件,只需要安装软件,不用建实例。
(3):数据覆盖,包括数据文件、参数文件、控制文件、日志文件、pwd文件,放在与原系统相同的目录。如果目录有所改变,则需要另外建立控制文件,修改pfile。
(4):建立服务:使用oradim 命令 cmd下 oradim -new -sid gbicc ,表示建立一个服务,sid为gbicc。如果是在linux下,不需要此步。
(5):建立监听: net configuration assintant 来建立(建议将源系统的network下的文件拷过来,根据实际情况修改)。
(6):打开数据库: cmd
set oracle_sid=gbicc;
sqlplus /nolog;
Conn / as sysdba;
startup;

至此,冷备份恢复成功

1、 基于表空间的热备

  --查询表空间的名字和状态

SQL> select file_id,tablespace_name,status from dba_data_files;

FILE_ID TABLESPACE_NAME          STATUS

---------- ------------------------------ ---------

4 USERS              AVAILABLE

3 UNDOTBS1              AVAILABLE

2 SYSAUX              AVAILABLE

1 SYSTEM              AVAILABLE

5 COSTCTL_TBS              AVAILABLE

6 DEV_DATA              AVAILABLE

7 PDMS_DATA              AVAILABLE

已选择7行。

  --开始备份,将会

SQL> alter tablespace PDMS_DATA  begin backup;

表空间已更改。

  --拷贝数据文件到指定的备份磁盘上

SQL> host cp /opt/oracle/app/oradata/pdms/PDMS_DATA.dbf /u03/backup/hotbak

  --查看所有数据文件的备份状态

SQL> select * from v$backup;

FILE# STATUS         CHANGE# TIME

---------- ------------------ ---------- --------------

1 NOT ACTIVE               0

2 NOT ACTIVE               0

3 NOT ACTIVE               0

4 NOT ACTIVE               0

5 NOT ACTIVE               0

6 NOT ACTIVE               0

7 ACTIVE               12657642 15-12月-16

  --将表空间重新设置为非备份状态

SQL> alter tablespace PDMS_DATA end backup;

表空间已更改。

  --查看备份状态

SQL> select * from v$backup;

FILE# STATUS         CHANGE# TIME

---------- ------------------ ---------- --------------

1 NOT ACTIVE               0

2 NOT ACTIVE               0

3 NOT ACTIVE               0

4 NOT ACTIVE               0

5 NOT ACTIVE               0

6 NOT ACTIVE               0

7 NOT ACTIVE           12657642 15-12月-16

已选择7行。

2. 基于数据库的热备

  alter database begin backup;

拷贝所有的datafile到备份目录

alter database end backup;

3. 控制文件的热备

  alter database backup controlfile to '<dir>' [reuse];          --控制文件的完整备份

alter database backup controlfile to trace as '<dir>'  --用于创建控制文件的语句,丢失了部分信息,可以直接查看

SQL> alter database backup controlfile to '/u03/backup/hotbak/control01.ctl';

数据库已更改。

SQL> alter database backup controlfile to trace as '/u03/backup/hotbak/control02.ctl';

数据库已更改。

查control02.ctl

View Code

4. 参数文件的热备

  create pfile from spfile ;

create pfile = '<dir>' from spfile;

SQL> create pfile = '/u03/backup/hotbak/initdbsrv1.ora' from spfile;

文件已创建。

5. 临时表空间的数据文件、日志文件不需要备份

五、热备脚本

基于表空间的热备(推荐使用这种方式)

vim hotbak.sql

set feedback off

set heading off

set verify off

set trimspool off

set pagesize 0

set linesize 200

define dir = '/u03/backup/hotbak'

define script = '/tmp/hotbak_tb.sql'

ho rm &script

ho rm &dir/*

spool &script

select 'alter tablespace '|| tablespace_name ||' begin backup ;' ||

chr(10)||'ho cp ' || file_name || ' &dir ' ||

chr(10)||'alter tablespace '|| tablespace_name || ' end backup;'

from dba_data_files order by tablespace_name;

spool off

start &script

alter database backup controlfile to '&dir/controlbak.ctl';

create pfile = '&dir/initdbsrv1.ora' from spfile;

其中char(10)表示换行,红色部分需要自行修改

SQL> start hotbak.sql;  --执行该脚本即可对数据库基于表空间进行热备

基于数据库(数据文件)的热备

vim hotbak.sql

set feedback off

set heading off

set verify off

set trimspool off

set pagesize 0

set linesize 200

define dir = '/u03/backup/hotbak'

define script = '/tmp/hotbak_tb.sql'

ho rm &script

ho rm &dir/*

spool &script

select 'alter tablespace '|| tablespace_name ||' begin backup ;' ||

chr(10)||'ho cp ' || file_name || ' &dir ' ||

chr(10)||'alter tablespace '|| tablespace_name || ' end backup;'

from dba_data_files order by tablespace_name;

spool off

start &script

alter database backup controlfile to '&dir/controlbak.ctl';

create pfile = '&dir/initdbsrv1.ora' from spfile;

Oracle数据库三种备份方式介绍相关推荐

  1. Oracle数据库三种备份方案

    Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP).热备份和冷备份.导出备件是一种逻辑备份,冷备份和热备份是物理备份. 一. 导出/导入(Export/Import) 利用 ...

  2. 数据库三种备份方式(转)

    转:https://www.2cto.com/database/201505/403507.html 1.完全备份(Full Backup) 备份全部选中的文件夹,并不依赖文件的存档属性来确定备份那些 ...

  3. oracle循环的方式,Oracle 的几种循环方式介绍

    1 Oracle 中的Goto 用法: declare x number; begin x:=10; --定义的初始值 <> --循环点 x:= x-2; -- 循环的处理条件 dbms_ ...

  4. 分布式锁简单入门以及三种实现方式介绍(滴滴)

    很多小伙伴在学习Java的时候,总是感觉Java多线程在实际的业务中很少使用,以至于不会花太多的时间去学习,技术债不断累积!等到了一定程度的时候对于与Java多线程相关的东西就很难理解,今天需要探讨的 ...

  5. 分布式锁简单入门以及三种实现方式介绍

    分布式锁简单入门以及三种实现方式介绍 2018年01月11日 21:16:28 徐刘根 阅读数:37912 标签: 分布式 分布式锁 高并发 更多 个人分类: 集群分布式 版权声明:本文为博主原创文章 ...

  6. 分布式锁简单入门以及三种实现方式介绍_徐刘根的博客-CSDN博客

    原文地址 rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmled ...

  7. 可网管交换机的三种管理方式介绍

    交换机的按是否可网管,分为可网管交换机和不可网管交换机,可网管交换机可以通过以下几种途径进行管理:通过RS-232串行口(或并行口)管理.通过网络浏览器管理和通过网络管理软件管理.接下来就由杭州飞畅科 ...

  8. 数据库事务的三种提交方式介绍

    文章目录 数据库事务提交的三种方式: 为什么需要隐式提交: 通过不同的数据库来介绍自动提交和手动提交: 举例: 数据库事务提交的三种方式: 手动显式提交.隐式提交及自动提交. 参考:https://b ...

  9. mysql连oracle方法_Oracle数据库三种连接方式

    访问Oracle数据库,可以通过三种方式:第一种方式是应用进程直接访问数据库实例的共享内存,第二种方式是通过beq协议在本机上访问 访问Oracle数据库,可以通过三种方式:第一种方式是应用进程直接访 ...

最新文章

  1. logcat 结合 grep 过滤 log 日志信息
  2. Python OpenCV学习笔记之:图像读取,显示及保存
  3. Mac iStat Menu 注册码
  4. 在线作图|如何绘制一张星图
  5. C++之TR1::function
  6. C++ 力扣剑指Offer16-数值的整数次方
  7. android eclipse自动更新,Android Eclipse 升级ADT到24.0.2完美解决方案
  8. java之的读取文件大全
  9. 知识图谱研讨实录09丨肖仰华教授带你读懂知识图谱语言认知
  10. c# 获取路径的盘符_C# IO操作之 如何玩转路径
  11. html 字体设置草体,CSS 网页安全字体
  12. mmd Ray渲染 mikumikudance导入模型阴影很黑
  13. 基于阿里云的双活灾备方案的设计
  14. android 分享小程序到微信,Android 分享微信小程序之图片优化
  15. 牛客笔试OJ-在线编辑器输入输出总结
  16. python+twilio实现打电话和发短信功能
  17. [cocos2dx开发技巧4]工具CocosBuilder的使用--复杂动画
  18. Flutter for Web开发打包部署
  19. dialer(dialer接口是什么意思)
  20. 基于java码头船只出行及配套货柜码放管理系统(含源文件)

热门文章

  1. SSH1和SSH2区别
  2. strcmp函数的用法
  3. 什么是GCaMP6f?钙离子成像技术。
  4. 低端机能用鸿蒙系统吗,鸿蒙系统为何只用在中低端手机?
  5. Android开发之简单的电子相册实现
  6. 游戏化设计工作坊--MIXTure团队的预习作业
  7. 理解 ByteBuffer
  8. postgresql安装后链接报错psql: FATAL: Ident authentication failed for user “postgres“
  9. aria-expanded
  10. 微信小程序动漫论坛平台+后台管理系统SSM-JAVA【数据库设计、论文、源码、开题报告】