精华内容
下载资源
问答
  • 数据库备份方案及容灾备份(Mysql,SqlServer,Oracle)
    千次阅读
    2020-01-15 12:10:44

    备份文件目录结构

     

    备份文件总目录databak:

    databak/Installation environment--环境备份目录

    databak/project/package--项目部署包备份目录

    databak/project/logs--项目日志备份目录

    databak/file--文件备份目录

    databak/datafile--数据备份目录

     

     

    传统备份

    本机备份,备份文件存储在非项目运行磁盘空间下,windows服务器禁止在系统盘下存储备份文件,linux服务器禁止在/etc、/usr、/var、/lib、/tmp等特殊系统目录下存储备份文件。

     

    1. 环境备份

    序号

    说明

    内容

    备注

    1

    备份内容

    java环境安装包

    .net环境安装包

    C环境安装包

    Python环境安装包

    tomcat等容器安装包及初始配置文件

    数据库安装包

    .....运行基础环境相关安装服务

     

    2

    备份方式

    全量备份/变更备份

    手动备份文件

    3

    文件期限

    永久保留

     

     

    1. 项目备份

    序号

    说明

    内容

    备注

    1

    备份内容

    项目部署包

    部署说明文件

     

    2

    备份方式

    每周备份/更新版本备份

    Win服务器采用计划任务运行脚本

    Linux服务器采用 crontab定时执行shell脚本

     

     

    3

    文件期限

    保留最新3次备份文件

     

     

    1. 文件备份

    序号

    说明

    内容

    备注

    1

    备份内容

    项目附件文件

    项目模板文件

     

    2

    备份方式

    每日增量备份/全量备份

    全量备份:

    Win服务器采用计划任务运行脚本

    Linux服务器采用 crontab定时执行shell脚本

    增量备份:

    增量备份工具

    3

    文件期限

    永久保留

     

     

    1. 数据备份

    序号

    说明

    内容

    备注

    1

    备份内容

    数据库备份文件

    或者

    数据库原始文件

     

    2

    备份方式

    小数据量每日全量备份

    大数据量每日增量备份

    全量备份:

    数据库自带备份工具与备份。

    Win服务器采用计划任务运行脚本

    Linux服务器采用 crontab定时执行shell脚本

    增量备份(不适用数据库原始文件备份):

    数据库增量备份工具

    3

    文件期限

    小数据量永久保留最新3次备份文件

    大数据量永久保留备份文件

     

     

     

     

     

     

    容灾备份

     

    1. 容灾备份说明

    容灾备份是为了应对服务器磁盘故障导致数据丢失,保证数据备份的安全性。使得在服务器发生故障后可以快速恢复项目使项目正常运行。结合传统备份方式,使得备份结构更加清晰,还原项目更加快速。能够合理避免磁盘损坏造成项目灾难性的故障的发生。使项目更加健全和完善。

    a容灾备份文件存储必须选择非本服务器存储空间

    b备份必须在晚上,避免影响项目的正常使用以及过多占用网络资源

    c定期检查备份内容是否正常和完整

    d定期检查备份存储空间是否正常

    e合理规划备份存储空间避免影响正常备份

    1. 容灾备份方式

    序号

    方式

    说明

    备注

    1

    外挂移动盘

    在服务器外接一个移动硬盘或者其他移动存储设备。

     

    2

    内网备份服务器

    专门建设一台备份存储服务器,使用ftp、sftp的方式上传备份数据。

     

    3

    公网备份服务器

    由网进公司提供一个公共网络下的备份存储服务器,使用ftp、sftp的方式上传备份数据。

     

     

    1. 备份方法

    序号

    备份方式

    备份内容

    方法

    备注

    1

    外挂移动盘

    环境备份

    手动备份,环境变更后手动备份

     

    2

    项目备份

    项目更新前,手动吧项目部署文件备份至外挂磁盘中,使项目部署的备份文件保持最新3次。

     

    3

    文件备份

    每天晚上小数据量文件采用全量备份,大的数据量采用增量备份的方式把数据拷贝至外挂磁盘中。

     

    4

    数据备份

     

     

    5

    内网备份服务器

    环境备份

    手动备份,环境变更后手动备份

     

    6

    项目备份

    项目更新前,手动吧项目部署文件上传至内网FTP中,使项目部署的备份文件保持最新3次。

     

    7

    文件备份

    每天晚上小数据量文件采用全量备份,大的数据量采用增量备份的方式把数据上传至FTP备份服务器中。

     

    8

    数据备份

    同上

     

    9

    公网备份服务器

    环境备份

    手动备份,环境变更后手动备份

     

    10

    项目备份

    项目更新前,手动吧项目部署文件上传至内网FTP中,使项目部署的备份文件保持最新3次。

     

    11

    文件备份

    每天晚上小数据量文件采用全量备份,大的数据量采用增量备份的方式把数据上传至FTP备份服务器中。

     

    12

    数据备份

    同上

     

     

     

    数据库备份基础步骤

     

    1. Mysql备份

    Windows服务器

    1.1备份bat命令:

    echo 备份
    "[mysqldump.exe]" -u[username] -p[password] --opt --default-character-set=utf8 -e --triggers -R --hex-blob --flush-logs -x [database] > [file]
    echo 导出已经完成
    #pause

    参数说明:

    [mysqldump.exe]--mysqldump文件绝对路径

    [username]--数据库用户名

    [password]--数据库密码

    [database]--数据库名称

    [file]--导出文件绝对路径+文件名称

     

    1.2创建计划任务每日或者固定时间点内执行bat。

     

    Linux服务器

    1.3备份Shell命令:

    #!/bin/bash
    base_dir=/home/test/sql_script
    DATE=$(date +%Y%m%d)
    time=$(date "+%Y-%m-%d %H:%M:%S")
    cd $base_dir
    mysqldump -u[username] -p[password] --databases [database] > [file]
    if [ $? -eq 0 ]
    then
      echo "成功备份mysql数据库,当前日期为:"$time >> /home/test/mysql_dump.log
    else
      echo "备份mysql数据库失败:当前日期为:"$time>> /home/test/mysql_dump.log
    Fi

    参数说明:

    [username]--数据库用户名

    [password]--数据库密码

    [database]--数据库名称

    [file]--导出文件绝对路径+文件名称

     

    1.4创建作业

    crontab -e 创建

    1 1 * * * /script/FTP.sh  --输入执行脚本

    :wq --保存作业

    1 1 * * * 每天第一个小时执行一次

    定时含义* * * * * 五个参数依次代表的含义分、时、日、月、星期

     

    1. Oracle备份

    Windows服务器

    2.1备份bat命令:

    @echo off
    set BACKUP_DIR=[filepath]
    set ORACLE_USERNAME=[username]
    set ORACLE_PASSWORD=[password]
    set ORACLE_DB=[kj]
    set BACK_OPTION=
    set BACK_NAME=[filename]
    set BACK_FULL_NAME=%BACKUP_DIR%\%BACK_NAME%
    rem 开始备份
    exp %ORACLE_USERNAME%/%ORACLE_PASSWORD%@%ORACLE_DB%  %BACK_OPTION% file="%BACK_FULL_NAME%.dmp log="%BACK_FULL_NAME%.log"

    参数说明:

    [filepath]--备份文件目录

    [username]--oracle用户名

    [password]--oracle密码

    [kj]--表空间名称

    [filename]--备份文件名称不带

     

    2.2创建计划任务每日或者固定时间点内执行bat。

     

    Linux服务器

    2.3Shell备份命令:

    #!/bin/bash
    su - [oracleuser] 
    export ORACLE_SID=[sid]
    expdp [username]/[password] dumpfile=[filepath][filename].dmp logfile=[filepath][filename].log schemas=[kj];

    参数说明:

    [oracleuser]--linux系统oracle用户

    [sid]--实例名称

    [filepath]--备份文件目录

    [username]--oracle用户名

    [password]--oracle密码

    [kj]--表空间名称

    [filename]--备份文件名称不带

     

    2.4创建作业

    crontab -e 创建

    1 1 * * * /script/FTP.sh  --输入执行脚本

    :wq --保存作业

    1 1 * * * 每天第一个小时执行一次

    定时含义* * * * * 五个参数依次代表的含义分、时、日、月、星期

     

    1. SqlServer备份

    windows服务器

    3.1bat命令备份

    @echo off
    set path=%path%;[osql.exe]
    echo 数据库备份开始
    osql.exe -S [IP] -U [username] -P [password] -i sqlserverbackup.sql -o [logsfile]
    echo 数据库备份完成
    Pause

    参数说明:

    [osql.exe]--osql.exe文件位置C:\Program Files (x86)\Microsoft SQL Server\80\Tools\Binn

    [IP]--数据库IP

    [username]--数据库用户名

    [password]--数据库密码

    [logsfile]--日志文件路径加名称(日志格式.out)

     

    3.2创建sqlserverbackup.sql文件

    sqlserverbackup.sql文件必须和bat在同一目录下,SQL代码如下:

    DECLARE @name varchar(50)
    DECLARE @datetime char(14)
    DECLARE @path varchar(255)
    DECLARE @bakfile varchar(255)
    set @name='[filename]'
    set @datetime=CONVERT(char(8),getdate(),112) + REPLACE(CONVERT(char(8),getdate(),108),':','')
    set @path='[filepath]'
    set @bakfile=@path+''+@name+'.BAK'
    backup database @name to disk=@bakfile with name=@name
    Go

    参数说明:

    [filename]--备份文件名称不需要后缀

    [filepath]--备份文件路径

     

    3.3创建计划任务每日或者固定时间点内执行bat。

    上传内网/公网FTP服务器

    1. Windows服务器

     

    1.1创建bat脚本(脚本如下):

    @Echo Off
    Echo open [IP] [port] >ftp.up
    Echo [username]>>ftp.up
    Echo [password]>>ftp.up
    Echo Cd .\[ftpfile] >>ftp.up
    Echo binary>>ftp.up
    Echo put "[filepath]">>ftp.up
    Echo bye>>ftp.up
    FTP -s:ftp.up
    del ftp.up /q
    del [filepath]

    bat脚本参数说明:

    [IP]--FTP服务器IP地址

    [prot]--FTP服务器端口,默认端口可以忽略该参数

    [username]--FTP服务器用户名

    [password]--FTP服务器密码

    [filepath]--上传文件的路径加文件名称

    [ftpfile]--ftp文件目录

     

    1.2创建计划任务每日或者固定时间点内执行bat。

     

    2.Linux服务器

    2.1创建shell脚本(脚本如下):

    #!/bin/bash
    ftp -i -n <<FTPIT
    open [IP] [port]
    user [username] [password]
    binary
    hash
    cd /[ftpfile]
    lcd [filepath]
    prompt
    mput [filename]
    close
    bye
    FTPIT
    rm -f [filepath]+[filename]

    Shell脚本参数说明

    [IP]--FTP服务器IP地址

    [prot]--FTP服务器端口,默认端口可以忽略该参数

    [username]--FTP服务器用户名

    [password]--FTP服务器密码

    [filepath]--上传文件的路径

    [ftpfile]--ftp文件目录

    [filename]--需要上传的文件名称,*代表本目录下所有文件

     

    2.2创建作业

    crontab -e 创建

    1 1 * * * /script/FTP.sh  --输入执行脚本

    :wq --保存作业

    1 1 * * * 每天第一个小时执行一次

    定时含义* * * * * 五个参数依次代表的含义分、时、日、月、星期

    更多相关内容
  • java实现数据库容灾备份,可以集成定时任务去实时备份 或者定期备份,欢迎一起讨论
  • Oracle数据库容灾备份技术探讨,包含三种Oracle灾备技术:Oracle Data Guard、GoldenGate、 CDP(Continue Data Protection 持续数据保护)
  • 数据库容灾备份.ppt

    2022-02-21 20:09:01
    数据库容灾备份.ppt
  • Oracle数据库容灾备份系统的建设实践.pdf
  • Oracle数据库容灾备份技术的研究与应用.pdf
  • Oracle数据库容灾备份中的流复制技术研究.pdf
  • ORACLE流复制技术在数据库容灾备份上的应用.pdf
  • #资源达人分享计划#
  • 备份数据库所有文件 差异备份 备份最近一次完成备份后增加的所有内容 image.png 二、操作 1-1 新建维护计划(在A(生产)服务器进行设置) 路径:数据库 -> 【管理】 -> 【维护计划】 -> 右键:【新建...

    一、概述

    完整备份

    备份数据库所有文件

    差异备份

    备份最近一次完成备份后增加的所有内容

    image.png

    二、操作

    1-1 新建维护计划(在A(生产)服务器进行设置)

    路径:数据库 -> 【管理】 -> 【维护计划】 -> 右键:【新建维护计划】

    image.png

    1-2 设置完整备份计划

    在【1-1】确定后,将进入维护计划的设计界面;

    image.png

    注意

    1. 将子计划的地方,修改子计划的名称修改为:完整备份计划,已示下一步的差异备份计划的区别;

    2. 将左侧的工具箱中的“备份数据库任务”直接拖拽到右侧空白区域;

    3. 双击“备份数据库任务”,选择备份类型:完整,另外注意对特定数据库的选择及备份文件保存路径及备份文件扩展名的设置;

    1-3 设置完整备份执行间隔及时间

    image.png

    注意

    1. 双击子计划窗格中的完整备份计划或单机如图标记的地方,即可进入到作业计划属性界面;

    2. 注意对计划类型,频率中的执行间隔(一天执行一次),每天频率,持续时间的选择;确定后即设置好了一个完整备份计划。

    1-4 设置差异备份计划

    image.png

    注意

    1. 点击添加子计划按钮,新建一个差异备份计划,将可以在子计划的窗格内,看到两个计划,分别为前面设置的 完整备份计划 和差异备份计划。

    2. 将左侧的工具想中的“备份数据库任务“ 直接拖拽到右侧空白区域;

    3. 双击“备份数据库任务“ 选择备份类型:差异,另外注意对特定数据库的选择及备份保存路径及备份文件扩展的设置;

    2-5 设置 差异备份 执行间隔及时间

    image.png

    注意

    1. 双击 子计划 窗格中的 差异备份计划 或单机 如图标记的地方,即可进入到 作业计划属性 界面;

    2. 注意对 计划类型 ,频率中的执行及执行间隔,每天频率,持续时间的选择;确定 后即设置好了一个差异备份计划。

    至此 ,就已经设置好了 完整备份 与 差异备份 的子计划了;

    image.png

    2-6 设置 完整备份 作业流程图

    image.png

    注意

    1. 在完整备份计划的设计界面,从左边窗格中,分别将 【清楚历史记录】,【清楚维护记录】控件拖拽到右侧区域;

    2. 按顺序将 【备份数据库任务】,【清除历史记录】,【清除维护】之间连线,形成完整备份的作业流程图;

    2-7 设置 完整备份 【清除历史记录】

    image.png

    注意

    1. 在完整备份计划的界面,双击 【清除历史记录】控件,即进入到任务设置界面;

    2. 注意要对删除的历史数据选择 和 对要保留数据的时间范围的设置;

    2-8 设置 完整备份 【清除维护】

    image.png

    注意

    1. 在完整备份计划的设计界面,双击【清除维护】控件,即进入到任务设置界面;

    2. 注意对要指定的文件夹和文件扩展名的设置,务必保持和步骤【1-2设置 完整备份 计划】里中的设置一致;

    3. 注意对要保留数据的时间范围的设置;

    2-9 重复步骤 2-62-8 操作 设置差异备份计划

    至此,一份 完整 + 差异备份的维护计划即完成了。


    【数据库】
    【管理】
    【维护计划】
    下生成了一份维护计划


    【数据库】
    【SQL Server代理】
    【作业】
    下生成了完整备份和差异备份的作业;

    image.png

     

    执行一次后会生成两个备份文件分别储存在文件夹FullBackUp与DIffrenceBackUp中。

    展开全文
  • 本文节选自ORACLE 11G官方技术文献中的 一节,主要针对RMAN下主库备库之间的快速灾难恢复,备份,增量备份的操作,中文版为40页,高清PDF,重新编译,DBA管理员必须手段,经典珍藏,拷贝到手机,平板上,祝您...
  • 技术领域本发明涉及数据容灾技术,具体的说是一种基于ceph实现oracle数据库容灾备份方法。背景技术:信息化技术高速发展,数据库系统作为数据管理及保存的核心系统,在系统的数据安全性、业务可持续性方面有着很高的...

    4746a6dd58c48478b1165f4d8978f080.gif

    技术领域

    本发明涉及数据容灾技术,具体的说是一种基于ceph实现oracle数据库容灾备份方法。

    背景技术:

    信息化技术高速发展,数据库系统作为数据管理及保存的核心系统,在系统的数据安全性、业务可持续性方面有着很高的要求。oracle数据库作为目前比较成熟、使用广泛的企业级数据库软件,在对系统安全及连续性方面已经具备多种架构策略。数据备份方面主要有rman、expdp,以及oracle dataguard、goldengate、rac等容灾、高可用方案,另外也有一些专门进行数据库备份及迁移的软件,比如:tina、tsm、nbu、dsg等。

    ceph是开源分布式文件系统,遵循LGPL协议,可以提供三种接口:Radosgw为原生API,兼容Swift和S3;rbd提供快设备服务,支持精简配置、快照、克隆;cephfs为posix接口文件系统。分布式文件系统具有高扩展性、高可靠性、高性能等特点,支持TB到PB级的扩展,10~1000台服务器集群,没有单点故障,数据多副本,数据均匀分布,并行度高。

    技术实现要素:

    本发明针对目前技术发展的需求和不足之处,提供一种基于ceph实现oracle数据库容灾备份方法。

    本发明所述一种基于ceph实现oracle数据库容灾备份方法,解决上述技术问题采用的技术方案如下:所述一种基于ceph实现oracle数据库容灾备份方法,使用多台服务器组成ceph分布式文件系统集群,服务器本地磁盘或外置磁盘阵列提供磁盘空间;以当前服务器为client,以cephfs和rbd的形式将配置好的ceph存储系统挂载到所有指定client服务器,然后选择其中一个client服务器创建数据库实例,并将数据库实例及所有数据保存在cephfs分布式文件系统中;在所有client服务器以相同配置部署oracle数据库到本地磁盘;只需确保一个client服务器上的oracle在运行,在任何一个client服务器均能够正常启动oracle数据库。

    优选的,在各个client服务器上部署ceph OSD、ceph MDS、ceph MON、Client服务,OSD副本数设置为3或者以上。

    优选的,在其中一个clienet服务器创建oracle数据库,将数据文件均保存在cephfs所挂载的目录下,然后清除该目录;依次在所有client服务器上执行相同操作,使每个服务器上均有相同的oracle配置,并可以正常启动oracle,待最后一个服务器完成配置后保留数据。

    本发明所述一种基于ceph实现oracle数据库容灾备份方法与现有技术相比具有的有益效果是:本发明能够有效解决单实例oracle数据库单点故障,并利用ceph分布式文件系统特性,保障了底层业务数据的冗余,进而保证了上层业务的连续性,保障了系统可持续运行能力,提高了系统安全性,降低了软硬件成本,同时ceph可为数据库底层数据的管理提供快照、多副本、镜像功能,实现数据的回滚,保障数据安全。

    附图说明

    附图1为所述基于ceph实现oracle数据库容灾备份的方法的示意框图;

    附图2为应用本发明所述方法的具体实例的示意图。

    具体实施方式

    为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,对本发明所述一种基于ceph实现oracle数据库容灾备份方法进一步详细说明。

    本发明所述基于ceph实现oracle数据库容灾备份的方法,基于ceph分布式文件系统实现oracle数据库备份容灾,需要用到2台以上服务器、存储设备,其中存储设备可以为外置磁盘阵列或者服务器内置硬盘;以当前服务器为client,以ceph分布式文件系统作为基础数据存储平台,在多个client端部署oracle实例,实现oracle运行服务器的高可靠性和故障可恢复性,通过ceph实现底层数据的多副本,通过其镜像、克隆、快照、回滚等技术手段,大大提高了数据的安全性和可恢复性。

    实施例:

    本实施例一种基于ceph实现oracle数据库容灾备份方法,如附图1所示,使用多台服务器组成ceph分布式文件系统集群,服务器本地磁盘或外置磁盘阵列提供磁盘空间;以当前服务器为client,以cephfs和rbd的形式将配置好的ceph存储系统挂载到所有指定client服务器,然后选择其中一个client服务器创建数据库实例,并将数据库实例及所有数据保存在cephfs分布式文件系统中;在所有client服务器以相同配置部署oracle数据库到本地磁盘;只需确保一个client服务器上的oracle在运行,在任何一个client服务器均能够正常启动oracle数据库。

    本实例例所述基于ceph实现oracle数据库容灾备份的方法,在各个client服务器上部署ceph OSD、ceph MDS、ceph MON、Client服务,OSD副本数设置为3或者以上;如附图1所示。

    所述选择其中一个client服务器创建数据库实例,并将数据库实例及所有数据保存在cephfs分布式文件系统中,主要是指,在其中一个clienet服务器创建oracle数据库,将数据文件均保存在cephfs所挂载的目录下;然后清除该目录,依次在所有client服务器上执行相同操作,使每个服务器上均有相同的oracle配置,并可以正常启动oracle,待最后一个服务器完成配置后保留数据。

    使用ceph rbd块设备,块设备相比cephfs具有更高的性能和高级功能,将其格式化后,挂载到clinet服务器使用,其他部署方式与上述部署oracle数据库相同。使用rbd镜像功能,创建镜像及快照,oralce数据库出现故障,将数据回退实现数据备份。当其中一个client端宕机或者oracle实例无法正常运行,彻底关闭当前oracle服务器,在另一个服务器启动即可,体现了服务器oracle数据库容灾备份后的高可用性。

    下面以一个具体实例来详细说明本发明所述方法,如附图2所示,部署ceph分布式文件系统,使用三台服务器作为ceph集群节点,分别部署ceph OSD、ceph Monitor、ceph MDS服务,其中OSD可以使用本地磁盘,也可以使用外部存储,OSD副本数设置为3;在服务器上部署安装oracle软件;以安装oracle的服务器节点作为ceph的客户端,选择以cephfs或者ceph rbd的形式,将ceph存储池挂载到client服务器使用;在其中一台client服务器创建oracle数据库,其中数据库及数据文件所在目录均选在cephfs或ceph rbd所挂载的目录;在完成oracle建库的client服务器验证数据库是否正常运行,如果正常运行,清除在cephfs和rbd所挂载目录下的内容;以相同的配置策略,在其他client服务器创建oracle数据库,并验证能否正常运行,直至到最后一个验证成功后,不进行清除,保留cephfs和rbd所挂载目录下的文件,到此oracle数据库可以在所有的client服务器正常运行,任选在其中一个节点启动即可。

    本发明所述基于ceph实现oracle数据库容灾备份的方法,能够为oracle数据库所使用的ceph卷进行克隆,并设置定时快照策略;在数据出现故障并在oracle层面无法解决时,使用ceph克隆卷或快照恢复数据;在其中一个节点oracle实例无法运行或节点宕机时,在该节点将oracle完全关闭,选择在其他的节点启动即可,数据不会因为一个服务器无法正常运行而丢失,保障了数据的可恢复性。ceph rbd本身对底层数据具有镜像、克隆、快照、迁移等多种功能,结合oracle数据库,为数据的管理及恢复提供了更多保障。ceph与oracle数据库的巧妙结合,是一种创新性的架构方案设计思路,具有非常高的可靠性和商业价值。

    上述具体实施方式仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述具体实施方式,任何符合本发明的权利要求书的且任何所属技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。

    展开全文
  • 转:Oracle数据库容灾备份技术探讨

    千次阅读 2018-06-15 16:35:12
    Oracle数据库容灾备份技术探讨三种Oracle灾备技术 对于Oracle数据库的灾备技术,我们可以从Data Guard,GoldenGate和CDP角度去考虑。 Oracle Data Guard提供了一种数据同步技术来实现Oracle的高可用性、增强的性能...

    Oracle数据库容灾备份技术探讨

    三种Oracle灾备技术

        对于Oracle数据库的灾备技术,我们可以从Data GuardGoldenGateCDP角度去考虑。

        Oracle Data Guard提供了一种数据同步技术来实现Oracle的高可用性、增强的性能以及自动的故障转移方案,为主数据库创建和维护多个备用数据库,主数据库的改变能够自动将信息从主数据库传送到备用数据库,并保证在此过程中没有信息的丢失。Oracle Data Guard实现方式(见图1)

     


     图1:Oracle Data Guard实现方式图


        Data Guard有两种类型的备用数据库:物理备用和逻辑备用数据库,虽然都是通过归档日志来实现主数据库和备用数据库的数据一致性,但是过程却不相同:一个是通过物理磁盘的方式,一个是通过重新生成SQL事物来完成数据同步。

      而GoldenGate则是一种基于日志的结构化数据复制技术,它通过解析源数据库在线日志或归档日志获得数据的增量变化,再将这些变化应用到目标数据库,从而实现源数据库与目标数据库同步。GoldenGate 可以在异构的IT基础结构(包括几乎所有常用操作系统平台和数据库平台)之间实现大量数据的实时复制(大概5秒以内的延迟),从而可以在应急系统、在线报表、实时数据仓库供应、交易跟踪、数据同步、集中/分发、容灾等多个场景下应用。由于GoldenGate是通过分析过滤日志来捕捉变化,因而可以实现跨平台的数据库复制以及非Oracle数据库的数据同步。

        CDP(Continue Data Protection 持续数据保护)是一项新兴的技术,也是目前最热门的数据保护技术之一。行业内通常的定义为:持续数据保护是一套方法,它可以捕获或跟踪数据的变化,并将其在生产数据之外独立存放,以确保数据可以恢复到过去的任意时间点。持续数据保护系统可以基于块、文件或应用实现,可以为恢复对象提供足够细的恢复粒度,实现几乎无限多的恢复时间点。

        由于Oracle数据库对读写一致性的特殊性要求,CDP厂商通常是通过调用Oracle9.2后提供的快照技术,能够在数据库正常运行的同时生成某一个时间点的一致性的镜像(注意一定是一致性镜像)Oracle数据库支持在这个一致性镜像基础上通过recover database,达到一致性的恢复。

       

    图2:CDP实现方式图

     

    灾备技术深入比较

        这三种技术都实现了数据库的灾难备份,但各有特点,存在以下几方面的不同。

        基本原理

        Oracle Data Guard 是通过Oracle数据库归档日志来实现的,并且通过Oracle Net来传输日志;Oracle Golden Gate是通过对归档日志的捕捉并分析其的变化来实现的,有自己独享的传输方式;CDP技术是通过数据库镜像来来实现数据同步,数据库镜像的归档以及传送策略是通过CDP软件来完成。Oracle Data Guard无论是物理备用或者逻辑备用都最多只能使数据库处在同时读的状态,不能实现同时读写,只能实现主机和备机的单活状态;Oracle GoldenGate由于其实现方式,两端数据库都处在双活状态,备份端可以提供实时的数据查询及报表业务等,从而提高系统整体的业务处理能力,充分利用备份端的计算能力,提升系统整体业务处理性能。可以实现两端数据的同时写入。CDP由于是操作系统及实现数据同步,因此不能实现数据库的双活,两个数据库的状态只能实现单活的状态。

        切换的时效性

        Data Guard在主备切换时需要改变数据库的状态才能使备用数据库达到可读写状态,Oracle GoldenGate在情况发生时,可以立即实现服务器的切换。CDP需要改变整个系统的状态才能将备用系统达到可用。

        对异构数据库的支持

        Data Guard通过物理和逻辑的方式在备用机上还原数据库的日志,因此不支持异构数据库,也不支持异构的操作系统;GoldenGate通过分析主数据库的日志来完成tail文件,因此支持异构数据库,也支持异构的操作系统。CDP是通过操作系统层面完成数据同步的,因此不支持异构数据库,更不支持异构的操作系统。

      系统资源的占用

        Data Guard在完成数据同步过程中需要占用数据库的一部份资源比如LGWRARCNNet manger进程或服务等,对数据库有较大的影响,使数据库性能下降。GoldenGateCDP是动态监控方式,对资源的消耗相对较少。

     归档方式支持

        Data Guard和GoldenGate都是通过日志来实现数据库的数据同步,因此必须要求Oracle数据库处在归档状态。而CDP因为其的实现方式,就没有这样的需求。

     结语

        在构建实际的灾备系统过程中,还需要实际情况,比如Oracle GoldenGate虽然支持双向复制,但如果链路因为网络中断发生问题,一旦网络恢复,故障发生后导致的主备库的数据差异如何处理,这些都不是数据库能完成的工作。因此在实际的方案选择上,还是要根据实际情况以及用户的需求来完善Oracle的灾备方案,这样才能做到有的放矢。


    展开全文
  • 【技术实现步骤摘要】本专利技术涉及数据容灾技术,具体的说是一种基于ceph实现oracle数据库容灾备份方法。技术介绍信息化技术高速发展,数据库系统作为数据管理及保存的核心系统,在系统的数据安全性、业务可持续性...
  • 数据库容灾方案

    千次阅读 2019-08-23 09:19:39
    也称数据库双活、数据库复制,即...进行数据库容灾需要考虑以下问题: 1 本地容灾还是异地容灾,异地容灾的网络带宽及稳定性。 2 灾备数据库是否需要在线查询,是否需要效验比对某些核心数据是否与生产库一致。 ...
  • mysql数据库容灾实时备份主从

    千次阅读 2017-05-11 19:18:00
    介绍: 随着互联网时代的发展数据对于一个企业来说越来越重要,各种安全策略进行备份,同步都应用而生,技术发展也逐渐走向成熟,虽然我们不能100%保证数据的安全,...一、mysql数据库备份参数及命令说明 1、serve...
  • 构建灾难备份系统以及实现数据库分布的理想的技术解决方案。利用数据流 (Data Streams),可实现数据库之间或数据库内部的数据和事件的共享。使用 Oracle Streams 技术,数据库管理员可定义哪些数据或事件需要被捕捉...
  • 目录 冷备、热备、rman增备全备 RTO和RPO 容灾方案种类 RAC与ADG/OGG方案比较 ADG主要解决了DG时代读写不能并行的问题 OGG ADG&OGG两种不同存储架构的差异 基于ASM冗余设计架构实现的数据库双活方案,如何规划ASM 冷...
  • Redis 备份容灾及高可用方案 1 一 Redis 简单介绍 Redis 是一个高性能的 key-value 非关系型数据库 由于其具有高性能的特性 支持高可用 持久化 多种数据结构集群等使其脱颖而出成为常用的非关系型数据库 此外 Redis ...
  • 本课题设计并实现了一种多数据库容灾系统,可以对不同的数据库系统进行容灾备份,并且可以使用统一的方法进行管理,并支持灵活的容灾策略配置,该系统可以在任何一台主机上通过该程序来管理不同数据库服务器及备份...
  • mysql 容灾备份

    千次阅读 2019-07-02 10:27:00
    目标:将服务器A上的测试数据库定时备份到服务器B中 需要技术:mysqldump + crontab 步骤: 1.修改mysql远程连接访问权限 修改mysql的配置文件/mysql/my.conf,将bind-address后面增加远程访问IP地址或者禁掉这句话...
  • 结合模拟常用系统环境进行方案设计的试验,得出基于Redo log复制技术的数据库备份方式,不仅具有高效的资源利用、跨平台数据库同步、主备库双活、断点续传等功能,可以实现Oracle数据库的高可用、提高保护数据的安全...
  • 由于核心工作人员的相继离职,运行了15年的国内数据库著名论坛**PUB在中秋节前,因bug修复请求导致全库关闭2天多,数据丢失近4个月。因工作人员的疏忽导致数据丢失的情况屡见不鲜,那么你是怎么管理/维护所在公司的...
  • 验证Beedup对SQL Server2008及以上版本的数据库实时复制、数据容灾功能。 了解Beedup技术实现方式,依赖的运行环境,为制定容灾方案提供参考。 测试目标 Beedup全量初始化复制、实时增量复制功能 DDL复制支持,...
  • 本报告聚焦金融领域数据库灾备相关技术。详细介绍了容灾与备份的定义...全面梳理了主流数据库容灾备份技术架构、实现方式与部署方案,系统阐述了节点、网络、数据中心等故障的应对方案,展望了数据库灾备技术发展方向。
  • 第二章 招标需求一、项目概况桐庐县第一人民医院数据库容灾备份系统项目,实现存储数据的备份容灾,并对存储实现监管,实现数据的容灾。实施地点: 桐庐县第一人民医院二、招标设备清单及规格参数要求: 设备清单 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 21,924
精华内容 8,769
关键字:

数据库容灾备份

友情链接: ball0421-14.25.rar