Oracle 数据库备份实战

 最近公司的客户希望使用oracle数据库,所以我们只好将数据从mysql数据库迁移到oracle数据库,并对oracle数据库制定了一个备份策略,之前虽然对oracle很熟悉,但做备份策略还是第一次,所以详细记录下来并分享,欢迎大家指教。我们使用rman进行热备份,并启用了闪回表。平时在操作重要数据前,还会通过数据泵(expdp/impdp)进行一次逻辑备份。

备份模式

物理备份与逻辑备份

物理备份: 物理备份是磁盘块为基本单位将数据从主机复制到备机。

逻辑备份: 逻辑备份是以文件为基本单位将数据从主机复制到备机,通过sql或者flatfile文件为中转进行迁移。

高效性:

物理备份是位于文件系统之下和硬件磁盘驱动之上。增加了一个软驱动,它忽略了文件和结构,处理过程简洁,因此在执行过程中所花费在搜索操作上的开销较少,备份的性能很高。

逻辑备份是基于文件级别的备份,由于每个文件都是由不同的逻辑块组成。每一个逻辑的文件块存储在连续的物理磁盘块上,但组成一个文件的不同逻辑块极有可能存储在分散的磁盘块上。逻辑备份在对非连续存储磁盘上的文件进行备份时需要额外的查找操作。这些额外的操作增加了磁盘的开销,降低了磁盘的吞吐率。所以,跟物理备份相比较,备份性能较差。

物理备份避免了当文件出现一个小的改动的时候,就需要对整个文件做备份,只是会去做改动部分的备份,有效的提高了备份效率,节省了备份时间。

逻辑备份模式下,文件即使一个很小的改变,也需将整个文件备份。这样如果一个文件很大的情况下,就会大幅度的降低备份效率,增加磁盘开销和备份时间。

实时性:

物理备份可以做到高效的实时备份,因为在每次主机往磁盘写数据的时候,都需要同时将数据写入到备机,这种写入操作都是基于磁盘扇区的,所以,很快就能被识别。只有在备机完成之后,才会返回给上层的应用系统来继续下一步工作。

逻辑备份是很难做到实时备份的,因为它的每次修改都是基于文件的,而文件的哪部分被修改,系统很难实时捕获到,所以备份的时候需要把整个文件读一遍再发到备机 ,实时的效率不是很高。

支持度:

物理备份是在文件系统之下对数据进行复制,所以它不受文件系统限制,可以支持各种文件系统包括RAW分区。

逻辑备份是以单个文件为单位对数据进行复制,所以它受文件系统限制,仅能对部分支持的文件系统做备份,不支持RAW分区。

(原文摘自:

--show parameter db_name; --sqlplus以sysdba身份连接orclconn /@orcl as sysdba; --重启监听:lsnrctl stop/lsnrctl start --1、开启归档模式(sqlplus工具,sys用户)    --查看闪回恢复区的信息。    show parameter db_recover     --增大闪回恢复区    alter system set db_recovery_file_dest_size=3G;     --修改归档日志的存放路径    alter system set log_archive_dest_1='location=/data/oracleArchive';               --查看当前日志操作模式    SELECT log_mode from v$database;     --启用归档日志前要先停止数据库    shutdown immediate;     --数据库以mount方式启动    startup mount;     --启用数据库归档    alter database archivelog;     --打开数据库    alter database open;     --查看归档日志信息    archive log list;  --2、开启补充日志    --查看当前数据库中补充日志状态    select SUPPLEMENTAL_LOG_DATA_MIN min,        SUPPLEMENTAL_LOG_DATA_PK  pk,        SUPPLEMENTAL_LOG_DATA_UI  ui,        SUPPLEMENTAL_LOG_DATA_FK  fk,        SUPPLEMENTAL_LOG_DATA_ALL "all"     from v$database;     --
                        
关键字:
50000+
5万行代码练就真实本领
17年
创办于2008年老牌培训机构
1000+
合作企业
98%
就业率

联系我们

电话咨询

0532-85025005

扫码添加微信