V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
czwstc
V2EX  ›  数据库

SQL Server 200G 数据库数据检验

  •  
  •   czwstc · 2020-02-11 12:50:58 +08:00 · 2025 次点击
    这是一个创建于 1758 天前的主题,其中的信息可能已经有所发展或是发生改变。

    各位老哥好,还在实习。项目上需要做一个叫数据验证的东西,有几个蛮大的数据库,大概 1 个近 200G,3 个 20G。 每周会修改其中的 1-2 个数据库,然后想要验证一下,

    • 没有被修改 /操作的数据库 数据没有变化
    • 被修改了的数据库,输出修改的地方

    然后数据库在海外。。有远程的 Windows 机器。正在解决第一个,我的想法是

    • 每周创建 Snapshots 然后比较上周与这周的 Snapshots。 (但是没搜到如何比较 SnapShots )
    • 搜到 Snapshot 可以为报表( report )服务 (但是我不太理解,能不能报表中体现一致,没修改,以及如何学习这个)
    • 每周备份数据库,或者做镜像数据库,然后比较数据库与数据库。(主要担心,200G 的数据库比较慢)

    不知道老哥们能不能给点意见。

    第 1 条附言  ·  2020-02-17 12:39:34 +08:00

    感谢六位老哥回复,皆已发送铜币。 整理如下: @dexterzzz 的回答言简意赅,非常牛逼。 CT 和 CDC 指的是 Change Tracking 以及 Change Data Capture,其中 @Yourshell 二楼老哥说的 “sql server 2019 的新特性”其实就是 CT 和 CDC,也不是 2019 的特效,原文说,2019 支持这两种方法,两个方法分别在 2008 年和 2014 年(大概时间)加入 SQL Server 的功能中。 1 楼老哥 @rongchangpig 说审计,其实数据库都有第三方的审计功能,@whywhy36 给的推荐中就有一个工具。

    PS:

    7 条回复    2020-02-17 12:38:48 +08:00
    rongchangpig
        1
    rongchangpig  
       2020-02-11 15:04:24 +08:00
    Oracle 的话我知道用审计 sqlserver 不太了解
    Yourshell
        2
    Yourshell  
       2020-02-11 15:19:57 +08:00
    miao666
        3
    miao666  
       2020-02-11 15:23:47 +08:00 via Android
    方法 3 适用所有数据库,慢的话可以多进程多线程
    whywhy36
        4
    whywhy36  
       2020-02-11 15:25:26 +08:00   ❤️ 1
    Change Data Capture 在 SQL Server 2017 版本里面已经支持了。 可以尝试升级 Database Engine 来解决。

    假如升级不行的话,可以尝试其他商业解决方案:ApexSQL Audit

    这个连接上有详细的各种 tracking/auditing 的解决方案:www.sqlshack.com/various-techniques-to-audit-sql-server-databases/
    dexterzzz
        5
    dexterzzz  
       2020-02-11 15:35:28 +08:00 via Android   ❤️ 1
    审计,ct,cdc,版本控制表,ssis 都可以
    imicksoft
        6
    imicksoft  
       2020-02-12 11:26:08 +08:00   ❤️ 1
    BXC-SQLServer 数据库对象对比工具 1.3.100105.exe
    以前对比 sql 数据库这个软件,数据小可以用
    czwstc
        7
    czwstc  
    OP
       2020-02-17 12:38:48 +08:00
    感谢六位老哥回复,皆已发送铜币。
    整理如下:
    @dexterzzz 的回答言简意赅,非常牛逼。
    CT 和 CDC 指的是 Change Tracking 以及 Change Data Capture,其中
    @Yourshell 二楼老哥说的 “sql server 2019 的新特性”其实就是 CT 和 CDC,也不是 2019 的特效,原文说,2019 支持这两种方法,两个方法分别在 2008 年和 2014 年(大概时间)加入 SQL Server 的功能中。
    1 楼老哥 @rongchangpig 说审计,其实数据库都有第三方的审计功能,@whywhy36 给的推荐中就有一个工具。

    PS:- CDC:
    https://docs.microsoft.com/en-us/sql/relational-databases/track-changes/about-change-data-capture-sql-server?view=sql-server-ver15
    - CT:
    https://docs.microsoft.com/en-us/sql/relational-databases/track-changes/about-change-tracking-sql-server?view=sql-server-ver15
    后续:
    需求变了,改为只要比较其中的表和字段就可以了。感觉变简单了很多,正在研究方法。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5561 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 03:38 · PVG 11:38 · LAX 19:38 · JFK 22:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.