小编GAU*_*HOD的帖子

数据库角色权限是否优先于架构/对象级别权限?

我对 SQL Server 安全权限有一个有趣的观察。

我的设置如下。我试图限制用户更新特定架构下的表。

问题陈述是为什么用户可以通过视图(不同模式)在表上进行插入,即使在视图定义中的表模式上显式拒绝插入?

USE master
GO

CREATE LOGIN Login1
    WITH password = 'Admin@123'
GO

CREATE DATABASE TestDB
GO

USE TestDB
GO

CREATE user Login1
FROM LOGIN Login1
GO

CREATE SCHEMA sch1
GO

CREATE SCHEMA V
GO

CREATE TABLE sch1.table1 (
    id INT
    ,name VARCHAR(5)
    )
GO

CREATE VIEW v.view1
AS
SELECT *
FROM sch1.table1
GO

CREATE VIEW sch1.view2
AS
SELECT *
FROM sch1.table1
GO

--User can update all tables
ALTER ROLE [db_datawriter] ADD MEMBER [Login1] 
GO …
Run Code Online (Sandbox Code Playgroud)

sql-server

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

除了操作系统资源之外,还有哪些因素会影响普通或分布式 AG 中的 log_send_rate?

我在分布式 AG 设置中观察到 log_send_rate 较低。我知道 AG 使用日志流,所以我认为它不应该与数据有任何关系,但我想知道这是否与它正在传输的数据有关,而不仅仅是操作系统资源(网络、I/O)?

供考虑的基本指标:

  • SQL Server 2019-CU16
  • 源 RAM 1.5 TB,48 个 CPU <> 目标 RAM 128 GB,48 个 CPU - 内存差异在这里起作用吗?
  • 两台服务器位于同一 DC,ping 延迟<1ms。目标服务器是虚拟机。
  • ROBOCOPY 测试显示文件传输速率约为 100 MB/s
  • 当高事务日志生成活动(例如索引维护或创建)发送到其他副本时 - 它以最大 20 MB/s 的速率传输(这不是预期的)。这是 log_send_queue 堆积起来的时候。
  • 另一端的 REDO 速率良好,没有 REDO 队列堆积在那里。

在源 AG 上,我没有看到“发送到传输的字节数/秒”计数器的任何内容,因此我无法确定这是否是瓶颈。

如果我遗漏了任何我应该包含的内容,请提出建议。

sql-server availability-groups distributed-availability-groups

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