确定镜像数据库是否与主体数据库保持同步。 在高性能模式下,主体服务器可能会积压大量仍需发送到镜像服务器的未发送日志记录。而且在任意运行模式下,镜像服务器也有可能积压大量已写入日志文件但仍需在镜像数据库中进行还原的未还原日志记录。 确定在高性能模式下,当主体服务器实例变得不可用时所丢失的数据量。 可以通过查看未发送的事务日志量(如果有)以及在主体服务器上提交丢失事务的时间间隔,来确定数据的丢失量。 将当前性能与过去性能进行比较 出现问题时,数据库管理员可以查看镜像性能的历史记录来帮助了解当前状态。
集中式数据库可通过镜像的方式实现容灾。根据查询相关资料信息显示,采用镜像技术可以实现集中式数据库的容灾。通过在不同的物理位置上搭建一个完全一样的镜像系统,能够保护由集中式数据库管理的大型信息系统,提高其容错性。当由于硬件故障或软件错误而发生故障时,将立即进入备份模式,从而实现数据的安全性和可用性。
数据库复制和镜像都是一种数据库恢复技术,即为了避免因一些突发情况,导致数据库崩溃或数据库中数据丢失
其实要问这两个名词区别的话,那么,数据库的镜像是由数据库复制而来的,复制是一个过程,镜像是一种结果,就像照相一样,“照相”是过程,“照片”是一种结果,而最终的目的就是把这一幕记录下来而已,呵呵,有点远了
数据库的镜像就是为了以后恢复数据库。。。
另外,如果深入讨论数据库镜像的话,就要说到并发 *** 作了,也就是对数据库的一些 *** 作,不仅可以在原数据库上,还可以在原数据库很“忙”的时候(被多人访问),先对其镜像 *** 作,提高效率
都是自己的语言说的,希望可以帮你o(∩_∩)o
数据库镜像是一种针对数据库高可用性的基于软件的解决方案。
其维护着一个数据库的两个相同的副本,这两个副本分别放置在不同的SQL Server数据库实例中。
建议使用不同位置的两台服务器来承载。在同一时刻,其中一台上的数据库用于客户端访问,充当“主体服务器”角色;而另一台则根据镜像会话的配置和状态,充当热备份服务器,即“镜像服务器角色”,这两种角色不是绝对的。
优点
l 增强了数据保护功能
l 提高了数据库的可用性
l 提高了生产数据库在升级期间的可用性
工作方式
在“数据库镜像会话”中,主体服务器和镜像服务器是相互通信和协作,并双方互补。
主体服务器角色上的数据库副本为生产数据库。数据库镜像会尽快将主体数据库中执行的每一项 *** 作(如:插入、更新和删除等)在镜像数据库中进行重新执行。这一过程是通过将活动事务日志记录的流发送到镜像服务器来完成,这可以尽快将日志记录按顺序应用到镜像数据库中。
而且数据库镜像是在物理日志记录级别执行这一“重做” *** 作的。SQL Server 2008 R2(以下简称:SQL08R2)中,为了减少网络的负载,主体服务器会将事务日志记录压缩后进行发送。
最近正好在做这个
数据库镜像是可以实现自动故障转移
这点是镜像和复制最大的区别
还有一点比较重要的区别是 镜像你做好了之后 是实时同步的
它的自动转移时要靠见证服务器做的
我所知道的复制方式是订阅、镜像、复制、备份与还原
希望对你有用
数据库镜像是将数据库事务处理从一个数据库移动到不同环境中的另一个数据库中 镜像的拷贝是一个备用的拷贝 不能直接访问 它只用在错误恢复的情况下 Oracle数据库与MSSQL数据 *** 作上有很大的不同 但是 在镜像 *** 作方面有类比的地方 这篇文章关于MSSQL数据库镜像在Oracle数据库中是如何实现的 它们之间存在哪些差异呢 首先 微软SQL数据库中的镜像数据库类似于Oracle数据库中的备用数据库 我说的只是类似 确切的说 我们需要考虑不同数据库在自己体系中的差异 MSSQL作为一个实例来 *** 作 一个实例包含几个数据库 你首先要登录一个实例 然后选择哪个数据库作用于该实例 而在Oracle数据库中 简单模式(忽略RAC)就只有一个数据库与一个实例相联系 因此 可以这么说 在Oracle数据库中 备份数据库(standby database)就完全是主数据库的快照 而在MSSQL中 镜像数据库仅仅是选择的那个数据库的备份 但没有包括代理 登录 任务(这些或者更多的数据库项目需要单独在数据库镜像上创建或者复制)这些外部数据项 在服务器数量上 Oracle的主数据库和备用数据库配置最小需要 台 在MSSQL中 最小数据是 个或 个 根据你所选择的高可用性 高安全性 高性能方式所决定 高可用性方式 这个 *** 作模式选项允许你在两台服务器上同步事务写入 并支持自动错误恢复 要使用这个选项 你必须还要使用一个证人服务器 高保护方式 这个选项可以让你在两台服务器上同步事物写入 但是错误恢复是手工的 因为自动的错误恢复不是这个选项的一部分 所以也不会用到证人服务器 高性能方式 这个选项不关心两台服务器上的写入是否是同步的 因此在性能上有所提高 当使用这个选项的时候 你只能假设镜像服务器上的所有事情都是成功完成 这个选项只允许手工的错误恢复 因此不会用到证人服务器 为了保证故障自动恢复 就需要有第三台服务器 可以称之为目击者(另外两个就是主数据库和镜像数据库) 你可以将这个目击者当作群集中的一个成员 它实现了 比 投票的能力 当我的一个组件不可达 并因此需要进行错误恢复的时候 证人服务器只有在你想实现自动错误恢复的时候才需要用到 在Oracle数据的一个事务中 日志缓冲器在废数据写入数据文件(忽略write ahead情况)前被刷新或者写入到redo日志中 这种刷新或者写入到redo日志的行为是有必要的 如像实例失败(使用前滚和回滚恢复过程)这样的事件发生时 MSSQL也承认将日志缓冲器写入到磁盘的重要性 不过这里称之为硬化(hardening) 首先将事务日志缓冲器的信息写入到磁盘或者硬化 接着将日志记录块发送到镜像数据库中 镜像数据库接收到该日志记录块后 将之存入到某个缓冲器中 随后依次硬化该日志记录块 当数据发生变化时 MSSQL数据库如何保持主数据库和镜像数据库的一致性呢Oracle用户非常熟悉SCN 而MSSQL用户通过使用mirroring_failover_lsn机制(粗略来讲就是一个日志序列号) MSSQL与Oracle不同 MSSQL将事务分离(两个事务在两个机器上) 而不是一个分布式事务(在自身提交前需要远程等待提交) 另外一个相似点 但稍微有些畸变的反射就是redo日志和事务日志 在Oracle中 完成的redo日志将被发送到远程的服务器中 将完成的 redo日志应用到备份数据中去 在MSSQL中 事务日志没有被传输 但是就像我以上提到的 日志缓冲器数据发送到网络上 这就导致另外一个镜像反射 备份和恢复模式 在Oracle中 当你处于归档模式或者非归档模式的时候 这些 *** 作是内定的 如果归档redo日志被传输或者提交到一个远程的服务器 那么主数据库明显就是在归档模式下 那些文件就是这么产生的 运行在这种模式下 允许有少量的数据丢失 因为在发生故障(无论什么样的故障)前 恢复能够在任意一个点上执行 在MSSQL中是类似的 但是有三种状态需要选择 《SQL Server联机丛书》 像许多其它的在线资源一样 讲述了在使用MSSQL时 种恢复模式的不同点 快速的比较有 MSSQL完整模式对应于 Oracle中的归档模式;简单模式对应于非归档模式;bulk模式与使用直接路径插入 添加提示 或者与nologging模式 *** 作类似 根据以上三种模式(这三种模式很容易转换 不需要关机或者重启)的描述以及日志缓冲器和归档redo日志的讨论中 很容易断定在MSSQL中进行数据库的镜像需要将数据的回复模式设置成完全模式(full model) 简单模式(Simple model)或许也能行 但是这种模式下维持事务日志中的小部分数据 在备份中 如果在日志被删节了 整个镜像过程也就破环了 因为当你在将事务发送到镜像数据库中的时候 如果日志被删节了 这个过程就不能完成 说到数据库被破坏该怎么办呢这正是镜像(或者说备份)的主要目的 当主数据库断开或者说遇到故障时候我们希望系统能回到镜像前或者备份前的状况去 这如何才能实现呢我们能自动实现或者手动实现 想实现这些 需要一些已经完成的设置 在MSSQL中 自动故障恢复 回到原来状态需要在HA模式 事务安全是full 数据传输是同步 有目击服务器的情况下 这种模式下运行还需要使用企业版的数据库系统 高安全性和高性能在标准版的情况下也能实现 MSSQL还有其它版本的选择 但是这些并不如Oracle的反射 干净 这些版本包括 Developer Workgroup 和 SQL Express 举个例子 目击服务器能够是任何的版本 但是如果你想给镜像服务器做一个快照 那么你就需要企业或者开发版的了 ( lian )在设置伙伴(partner 通常有主数据库和镜像数据库组成)过程中 他们的恢复状态开始起作用 通过使用相同的名字 镜像在远程/镜像服务器上建立(使用配置数据库镜像安全向导是最简单的方法)起来 并且镜像数据库被设置成NORECOVERY 通常它是恢复(recovering)状态的 在 MSSQL中 恢复数据库是没有的 因此没有进行上述的设置 是不能被其他用户当作只读数据库来使用的 为了避免这个中缺陷 你可以给镜像做一个快照 使得该 影像 对用户可见 正如我上述所提到的那样 这需要你的数据库版本是企业(或者开发)版 这就意味着用户需要有快照数据库的知识 知道如何进入存储它 如何告诉应用程序使用哪个数据库 惯例上来说 配置文件使用的 NET环境 你能建立一个主数据库和一个故障回滚的辅数据库 如果在Oracle中配置过备份数据库 你就会觉得这很类似 lishixinzhi/Article/program/SQLServer/201311/22292
一个是你版本问题,1399和1406可能不兼容(当然只是猜测,一般是兼容的,你可以尝试着装同个版本的看)
二是你设置是否正确,要再检查一次。
三是你两台机是怎么连的?要保证他们网络通啊,最好弄个本本直接连在主服务器上,试下能不能用。如果能用的话肯定是你网络设置出问题了。
以上就是关于如何查看镜像数据库的状态全部的内容,包括:如何查看镜像数据库的状态、集中式数据库可通过镜像的方式实现容灾吗、数据库复制和镜像有何作用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)