• SQL Server 高可用使用环境


    1, 数据库镜像

    2, 同步复制

    3, 日志传送

    4, 数据库快照

    镜像:

       准确来说是主机的备机,主机挂掉后可以迅速恢复。

       清理日志

    主要用来备份数据。需要做日志“完整“记录,如果记录的日志太大,备份主机的日志3次到不同的文件中,在收缩日志。收缩日志不要太小,适当大一点,具体看事务量,如到原有的10%左右,清理主库日志后,镜像的备机也将自动清理日志。

     

       原因:第一次备份没释放掉日志空间。

     同步复制

      

    主要用来做读写分离。

    同步复制一般用中转机 ,然后备机的内存要求比较高。

    事务复制通常在修改发生时(几乎实时)便传递给订阅服务器。

    同步事务复制要复制的表必须要主键,不读取全部数据。

    快照复制:某时间的快照,数据按一段时间同步一次,不实时。以特定时刻的瞬时状态分发,而不监视对数据的更新

    :每次需要重新读全部数据,传递到订阅服务器上,无需主键

    合并复制服务器和客户端之间复制数据,如区域办事处和总部之间单向或双向流动

    据 ASE_SNAPSHOT = 'Snapshot_Test注: 所有合并项目都必须包含带有唯一索引的 uniqueidentifier 列和 ROWGUIDCOL 属性。SQL Server 将在生成第一个快照时向没有 uniqueidentifier 列的已发布表添加该列。

     

     日志传送

    传送日志 IO 开销大,而且实时程度比镜像差。

    数据库快照

    数据库快照是数据库(称为“源数据库”)的只读静态视图。在创建时,每个数据库快照在事务上都与源数据库一致。在创建数据库快照时,源数据库通常会有打开的事务。在快照可以使用之前,打开的事务会回滚以使数据库快照在事务上取得一致。 

      客户端可以查询数据库快照,这对于基于创建快照时的数据编写报表是很有用的。而且,如果以后源数据库损坏了,便可以将源数据库恢复到它在创建快照时的状态。 

    是数据库镜像的备机如过要查询,因为其一直在还原状态,可以通过记录数据库快照来查看数据。

    --创建数据库快照


    代码
    --多逻辑文件名
    create database NDB_shot ON
     (Name 
    = NDB_Data,--是源数据库的文件逻辑名
        --新快照文件地址
        FileName = 'D:\Snapshot_son2.ss'),    
     (Name 
    = son2, --是源数据库的文件逻辑名
        --新快照文件地址
        FileName = 'D:\Snapshot_son1.ss'
     
    AS SNAPSHOT OF NDB ;

    --从数据库快照恢复数据库

    use master;

    GO

    RESTORE DATABASE Snapshot from

    DATABASE_SNAPSHOT = 'Snapshot_shot';

    要存在数据库快照,快照的源数据库就存在以下限制:

    ·                      不能对数据库进行删除、分离或还原。

    ·                      源数据库的性能受到影响。

    ·                      不能从源数据库或任何快照中删除文件。

    ·                      源数据库必须处于联机状态,除非该数据库在数据库镜像会话中是镜像数据库。

    ·                      若要在镜像数据库中创建数据库快照,数据库必须处于同步镜像状态。

  • 相关阅读:
    文本信息检索基本知识【转】
    单纯形【转】
    云飘忽不定?且看多种多样的云存储应用【转】
    海量数据来临 分层存储才是解决之道【转】
    伽玛函数_gamma
    设计模式理解创建模式
    Memory management demo from TCPL
    Welcome to asm!
    Monokai scheme for Qt
    Astyle for qtcreator
  • 原文地址:https://www.cnblogs.com/zping/p/1939112.html
Copyright © 2020-2023  润新知