oracle数据库备份(整理笔记)

   快到新一年了 ,复习一下oracle为之后作多准备sql

  1、Oracle备份方式分类:
Oracle有两类备份方式:
(1)物理备份:将实际组成数据库的操做系统文件从一处拷贝到另外一处的备份过程,就是冷备份、热备份;   
(2)逻辑备份:是利用SQL语言从数据库中抽取数据并存于二进制文件的过程,逻辑备份须要使用导入导出工具:    EXPDP/IMPDP或EXP/IMP;数据库

两种方式有什么优缺点:安全

oracle备份
概述 优势 缺点
冷备份 数据库能够暂时处于关闭状态时,咱们须要将它在这一稳定时刻的数据相关文件转移到安全的区域,当数据库遭到破坏,再从安全区域将备份的数据库相关文件拷贝回原来的位置,这样,就完成了一次快捷安全等数据转移。因为是在数据库不提供服务的关闭状态,因此称为冷备份。 备份安全迅速,容易维护 必须关闭数据库,不能随意在任意时间点上备份数据库
热备份
热备份能够很是精确的备份表空间级和用户级的数据,因为它是根据归档日志的时间轴来备份恢复的,理论上能够恢复到前一个操做,甚至就是前一秒的操做 不须要关闭数据库 ,时间点精确. 过程复杂,操做不可恢复,数据量较小的时候
逻辑备份

是利用SQL语言从数据库中抽取数据并存于二进制文件的过程。
逻辑备份使用导入导出工具:EXPDP/IMPDP或EXP/IMP;oracle

不可关闭,跨平台操做和迁移数据








下面来详细冷热备份的简单操做,逻辑备份须要使用工具,之后在进行概述app

1.冷备份工具

当数据库能够暂时处于关闭状态时,咱们须要将它在这一稳定时刻的数据相关文件转移到安全的区域,当数据库遭到破坏,再从安全区域将备份的数据库相关文件拷贝回原来的位置,这样,就完成了一次快捷安全等数据转移。因为是在数据库不提供服务的关闭状态,因此称为冷备份。冷备份具备不少优良特性,好比上面图中咱们提到的,快速,方便,以及高效。一次完整的冷备份步骤应该是:
(1)首先关闭数据库(shutdown normal)
(2)拷贝相关文件到安全区域(利用操做系统命令拷贝数据库的全部的数据文件、日志文件、控制文件、参数文件、口令文件等(包括路径))
(3)从新启动数据库(startup)
以上的步骤咱们能够用一个脚原本完成操做:
  su – oracle <      sqlplus /nolog 
  connect / as sysdba
  shutdown immediate;spa

       //注意11G须要使用copy,能够先经过等命令找到须要copy的文件位置操作系统

       2.1 控制文件:日志

         SQL: select * from V$CONTROLFILEorm

       2.2 参数文件:

         SQL: select * from V$PARAMETER where name like '%spfile%'

       2.3 密码文件

          D:\Oracle11g\product\11.2.0\dbhome_1\database\PWDorcl.ora

       2.4 数据文件

               SQL: select * from V$DATAFILE

       2.5 日志文件

              SQL: select * from V$LOGFILE

  copy 文件   备份位置(全部的日志、数据、控制及参数文件);
  startup;
  exit;
这样,咱们就完成了一次冷备份,请肯定你对这些相应的目录(包括写入的目标文件夹)有相应的权限。
物理冷备份的恢复:
恢复的时候,相对比较简单了,咱们停掉数据库,将文件拷贝回相应位置,重启数据库就能够了,固然也能够用脚原本完成。

2.备份

     当咱们须要作一个精度比较高的备份,并且咱们的数据库不可能停掉(少量访问量)时,这个状况下,咱们就须要归档方式下的备份,就是下面讨论的热备份。热备份能够很是精确的备份表空间级和用户级的数据,因为它是根据归档日志的时间轴来备份恢复的,理论上能够恢复到前一个操做,甚至就是前一秒的操做。具体步骤以下:

1关闭数据库

SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。

2

SQL> startup mount;
ORACLE 例程已经启动。

Total System Global Area  293601280 bytes
Fixed Size                  1290208 bytes
Variable Size             130023456 bytes
Database Buffers          155189248 bytes
Redo Buffers                7098368 bytes
数据库装载完毕。

3

SQL> alter database archivelog;
数据库已更改。

4

SQL> select open_mode from v$database;
OPEN_MODE
------------------
READ WRITE

SQL> archive log list;
数据库日志模式            存档模式
自动存档             启用
存档终点            D:\oracle\arch
最先的联机日志序列     3
下一个存档日志序列   5
当前日志序列           5

5 若是设置成自动归档

alter system set log_archive_start=true scope=spfile;

6联机备份

先启动数据库

alter database open;

将表空间设置为备份模式

alter tablespace users begin backup;

当表空间设置为备份模式后就能够对其中的数据文件进行复制了,使用命令以下

host copy D:\ora11g\*.DBF E:\backup\

复制以后 就不要设置为备份模式了,所以能够返回正常模式

alter tablespace users end backup;

 7脱机备份,脱机备份的优势是会产生较少的重作日志文件,但缺点是当用户正在进行脱机备份时所备份的表空间将不能访问,因为system 系统表空间和正在使用

的undo表空间不能脱机,所以脱机备份不适用于system 表空间和正在使用的undo表空间


SQL> alter tablespace users offline;

表空间已更改。

SQL> host copy F:\app\Administrator\oradata\orcl\*dbf F:\backup\
F:\app\Administrator\oradata\orcl\EXAMPLE01.DBF
F:\app\Administrator\oradata\orcl\SYSAUX01.DBF


SQL> alter tablespace users online;

表空间已更改。


逻辑备份:未完待续!

相关文章
相关标签/搜索