双机热备解决方案(mysql双机热备方案)

数据库双机热备有两种典型的方式,一种是比较标准的,两台服务器通过一个共享的存储设备(一般是共享的磁盘阵列或存储区域网SAN),并且安装双机软件,实现双机热备,称为共享方式。另一种方式是通过纯软件的方式,一般称为镜像的方式…

大家好,又见面了,我是你们的朋友全栈君。

数据库双机热备有两种典型的方式,一种是比较标准的,两台服务器通过一个共享的存储设备(一般是共享的磁盘阵列或存储区域网
SAN
),并且安装双机软件,实现双机热备,称为共享方式。另一种方式是通过纯软件的方式,一般称为镜像的方式(
Mirror
)。[@more@]

对于共享方式,数据库放在共享的存储设备上。当一台服务器提供服务时,直接在存储设备上进行读写。而当系统切换后,另一台服务器也同样读取该存储设备上的数据。

 对于纯软件的方式,通过镜像软件,将数据可以实时复制到另一台服务器上,这样同样的数据就在两台服务器上各存在一份,如果一台服务器出现故障,可以及时切换到另一台服务器。

 纯软件方式有两大优点:首先节约投资,不需购买昂贵的磁盘阵列;其次不受距离的限制,两台服务器不需受SCSI电缆的长度限制(光纤通道的磁盘阵列也不受距离限制,但投资会大一些)。

 另一方面,纯软件方式(镜像方式)相应也有三大缺点:

 1. 对写入性能的影响。由于要对数据进行实时复制,就必然会有一个过程。镜像软件可以以两种方式处理这个过程,一种是同步方式,即只有在复制也完成后,原来的操作(比如事务提交)才算成功。另一种是异步方式,只要源数据操作完成,就算成功,复制工作在其后进行。前一种方式对于数据库的写入的速度会有一定的影响(很小的影响),而后一种方式则在切换时有可能会产生数据的丢失。

 2. 数据同步过程的影响。当任何一台服务器重新启动(不论是正常切换、非正常启动或是例行维护)后,都需要对两台服务器上的数据进行同步。这一过程是自动进行的,有些软件可以以差分(同步差异部分)的方式进行,但需购买单独模块,也有些软件是要重新复制全部数据。在数据量较大时,这一过程不仅对性能存在影响,也同时造成了一个双机热备的不可用时间缺口。

 3. 可靠性。从理论上,镜像方式与共享存储的效果是一样的。但也有些用户及集成商会感觉这一方式存在着一定的风险。

 从方案选择的角度,建议在进行双机热备时,如果投资非常紧张且数据量小、服务及数据不是很关键写入的频率不是很频繁且响应速度要求不是很高,也可以将镜像方式作为一种选择。否则,还是应尽可能使用采用共享的存储设备(如磁盘阵列)的方式。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/43132/viewspace-804950/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/43132/viewspace-804950/

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/126887.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 在 ASP.NET MVC 中充分利用 WebGrid

    在 ASP.NET MVC 中充分利用 WebGridStuartLeeks下载代码示例今年早些时候,Microsoft发布了ASP.NETMVC版本3(asp.net/mvc)以及一款名为WebMatrix的新产品(asp.net/webmatrix)。 该WebMatrix版本中提供了几个工作效率帮助组件,可以简化诸如图表和表格数据呈现等任务。 其中一个帮助组件是WebGrid,

    2022年10月5日
    2
  • c++ 分苹果_接苹果问题C语言

    c++ 分苹果_接苹果问题C语言#include<iostream>usingnamespacestd;intfun(intm,intn){if(m==0)return1;if(n==1)return1;if(m<n)returnfun(m,m);//最大的情况就是m个苹果放在m个盘子里面if(m>=n)retur…

    2022年10月12日
    1
  • java调用python脚本返回的参数_javaweb调用python

    java调用python脚本返回的参数_javaweb调用python实际工程项目中可能会用到Java和python两种语言结合进行,这样就会涉及到一个问题,就是怎么用Java程序来调用已经写好的python脚本呢,一共有四种方法可以实现:1、在java类中直接执行python语句此方法需要引用org.python包,需要下载Jpython。Jython是一种完整的语言,而不是一个Java翻译器或仅仅是一个Python编译器,它是一个Python语言在Java中的完全实现。Jython是在JVM上实现的Python,由J

    2025年8月25日
    3
  • vscode搭建react框架(vscode补全js方法)

    文章目录一、安装node二、配置淘宝镜像三、配置vscode(win10)四、全局安装脚手架五、创建项目一、安装node请在官网下载安装:https://nodejs.org/zh-cn/vscode中点击(ctrl+`)调出终端输入指令node-v,能显示版本号,说明node已经装好了输入指令npm-v,能显示版本号,说明npm可以使用了点击链接查看图文教程https://blog.csdn.net/qq_45677671/article/detail

    2022年4月12日
    245
  • p2p文件服务器,P2P文件传输

    p2p文件服务器,P2P文件传输>网络中的应用,存在两种主流的体系结构。一种是C-S体系,另一种是P2P(对等网)体系。#C-S体系C-S体系是应用很广泛的应用程序体系,如Web应用。在C-S体系中,服务器承担着巨大的责任,需要处理大量的客户端请求,如文件下载请求,这种体系之间**客户端不能直接通信**,而是通过服务器传达。#P2P体系P2P,即peer-to-peer,意思是对等网络。P2P区分于C-S的就是这种体…

    2022年7月16日
    13
  • 网关地址和网关IP是什么[通俗易懂]

    网关地址和网关IP是什么[通俗易懂]一、什么是IP?:1、IP地址是指互联网协议地址(英语:InternetProtocolAddress,又译为网际协议地址),是IPAddress的缩写。IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。目前还有些ip代理软件,但大部分都收费。2、IP是英文InternetProtocol的缩写,意思是“网络之间…

    2022年6月16日
    31

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号