小编Jam*_*ley的帖子

在保持在线状态时对 4TB 表进行分区(SQL Server 标准版)

我们有一个当前大小约为 4TB 的表。我们希望在这个表上引入分区。该表已经聚集在我们希望分区的键上。

选项似乎是

  • 使用 ALTER TABLE SWITCH 将表的数据切换到只有一个分区(零成本)的范围分区表。然后为我们希望引入的每个分区调用 ALTER PARTITION FUNCTION(绝对不是零成本)
  • 使用 DROP_EXISTING=ON 重新创建聚集索引

我们没有使用 SQL Enterprise,因此无法在线执行此操作。

运行这些查询会锁定整个表。

  • 即使我们接受了锁定,我们也没有真正的方法来估计这需要多长时间(以及我们是否可以在一个周末及时完成)
  • 大多数数据是存档数据,只有一小部分数据实际上是“实时”的,并且在锁定时会出现问题。试图找出是否有一种使用 ALTER PARTITION 和 ALTER TABLE SWITCH 的策略,允许我们用在临时表上交换的数据来完成大部分工作。
  • 任何人都可以提出一种我们可以逐步做到这一点的方法吗?

谢谢!

sql-server partitioning

6
推荐指数
1
解决办法
1540
查看次数

使用 SQL Server 2014 Standard 审核数据库管理员操作

我们需要审计数据库管理员对客户数据库的访问——至少,知道他们正在访问哪个客户数据库(最好是为什么)。如果不升级到 SQL Enterprise 或安装 GreenSQL 之类的代理,是否有其他选择可供我们选择?

例如,我正在考虑某种特权脚本,它提升(sudo 风格)您访问数据库的权限,将其记录到事件日志中,然后再减少它们。

有没有办法实现这一点,可以可靠地审计?我们还应该考虑其他方法吗?

security sql-server audit

5
推荐指数
1
解决办法
376
查看次数

标签 统计

sql-server ×2

audit ×1

partitioning ×1

security ×1