相关疑难解决方法(0)

将 DBCC CHECKDB 划分为多天

我正在为非常大的数据库实施 Paul Randal 的手动传播 DBCC CHECKDB方法,该方法基本上包括:

  • 将数据库中的表大致平均地划分为 7 个桶
  • 每周运行两次 DBCC CHECKALLOC
  • 每周运行一次 DBCC CHECKCATALOG
  • 一周中的每一天在一个存储桶上运行 DBCC CHECKTABLE

有人用过这个技术吗?有没有现有的脚本?

我担心这实际上可能无法涵盖 CHECKDB 所做的一切;CHECKDB 的联机丛书文档说,除了 CHECKALLOC、CHECKCATALOG 和 CHECKTABLE,它还:

  • 验证数据库中每个索引视图的内容。
  • 使用 FILESTREAM 在文件系统中存储 varbinary(max) 数据时,验证表元数据与文件系统目录和文件之间的链接级一致性。(仅限 SQL 2008)
  • 验证数据库中的 Service Broker 数据。

所以这里是我的问题:

  1. 这些额外的检查是否必要/重要?(我可能更关心索引视图,我认为我们还没有使用 Service Broker 或 FILESTREAM。)

  2. 如果是这样,是否有单独执行这些额外检查的方法?

  3. CHECKALLOC 和 CHECKCATALOG 似乎运行得非常快,即使在大型数据库上也是如此。有什么理由不每天运行这些?

(注意:这将是数百台服务器上数千个现有数据库的标准例程,或者至少是特定大小的每个数据库的标准例程。这意味着像重组所有数据库以使用 CHECKFILEGROUP 这样的选项对我们来说并不实用。)

sql-server dbcc-checkdb vldb

11
推荐指数
2
解决办法
4138
查看次数

如何对SQL Server数据库备份文件进行完整性测试?

我被指派每两周检查一次来自 sql server 的数据库备份的完整性。我是这个领域的新手,所以我不知道如何正确地完成这项任务。如果有人(黑客)修改了数据库备份里面的数据,这是否是文件完整性的一部分?有没有办法检查它?

sql-server backup data-integrity

2
推荐指数
1
解决办法
1104
查看次数

标签 统计

sql-server ×2

backup ×1

data-integrity ×1

dbcc-checkdb ×1

vldb ×1