我不小心给了用户 db_owner 架构的所有权(使用 UI 中的复选框,如下所示),现在我不能:
ALTER AUTHORIZATION ON SCHEMA::db_owner TO dbo
Run Code Online (Sandbox Code Playgroud)
虽然它成功完成,但用户仍然拥有所有权,并且它是灰色的,所以我似乎也无法在 UI 中执行此操作。

找到了解决办法:
除了Arron 的回答之外,我意识到我会在错误的数据库(facepalm!)中运行上述命令。一旦数据库得到纠正,上面的 SQL 和下面的答案都有效。
我们有许多具有相同配置的系统
每天晚上 SQL Server 会做大约 2-3 小时的处理,然后是 2-3 小时的 AS 处理。然后全天只查询 AS。
假设这是一个专用服务器,没有其他应用程序值得关注,并且两组处理是完全同步的 - 没有重叠总是一个接一个 - 我怎样才能最好地设置 SQL 和 AS 服务器内存限制。
询问的原因是,如果我不为 SQL 设置限制,它将抢占它所能获取的所有内存。但是 - 我的理解是,如果出现以下情况,SQL 将很乐意放弃此内存:
它没有使用它并且
另一个服务/程序请求它。
所以从逻辑的角度来看,我相信允许 SQL 根据需要使用尽可能多的东西,但我不太确定 AS' TotalMemoryLimit。我不确定 AS 是否会放弃它的记忆。事实上,阅读更多让我相信让它承担一切是错误的。
这是否意味着我实际上需要为两者设置限制?我对最佳实践应该是什么以及考虑到流程不重叠我们需要衡量什么感到困惑。
希望这是有道理的。
假设恒定内存 (32gb) 和 CPU (4),2 x 磁盘阵列,我有以下磁盘
它们都是本地磁盘。
我的要求
我的问题是我试图了解最好将 TempDB 和操作系统以及日志放在哪里。我的经验仅限于这两个的最佳配置
这不是一个在线交易系统。它有大量数据写入(新数据 + 索引重建/重组),然后大量数据读取(我估计约为 50/50)处理了大约 13 个小时,然后就安静了。
我的理解是,与日志相比,在正常处理期间大量使用 TEMPDB。
我的想法如下
这篇文章的SQL Server的tempdb最佳实践提高性能建议我应该拆分tempdb成若干文件等于内核的数量。因此,对于 4 个内核,您将获得 4 个文件。
通过拥有更多数量的文件,您可以增加 SQL Server 可以随时推送到磁盘的物理 I/O 操作的数量。SQL Server 可以下推到磁盘级别的 I/O 越多,数据库运行的速度就越快。使用标准数据库,SQL Server 可以将其需要的大量数据缓存到内存中。由于 tempdb 的高写入特性,数据需要先写入磁盘,然后才能缓存到内存中。
虽然理论上听起来不错,但它真的像一般优化一样好吗?它是否可能仅适用于 IO 非常高的特定系统?
sql-server storage disk-structures sql-server-2008-r2 tempdb
我们现在为我们的数据库配备了一台新服务器,除此之外,我们还有 128GB 的 RAM 可用(以前我有 16GB)。我知道 SQL Server 非常擅长管理它的资源,但我想知道是否应该在服务器/数据库设置或处理代码(存储过程/索引等)中使用任何特殊设置或策略来确保 SS可用内存的最佳优势。
DB 大约 70GB,它是一个非事务性数据库(它是一个数据仓库)。所以基本上大写然后大量读是事情的正常流程。
因此,当我运行该作业时,它失败并显示不允许 NT AUTHORITY\SYSTEM 为 CmdExec 代理 1(我只有一个凭据)的消息。
“无法开始执行 step1(原因:JobOwner NT AUTHORITY\SYStem 没有使用代理 1 的权限”
我已经做了一些谷歌搜索所需的权限,我读到我需要让操作员访问 MSDB 中的 NT AUTHORITY\SYSTEM 登录名。我试过这个,但仍然没有运气。
假设我有一个比 LOG 和 tempdb(通过随机写入速度衡量)磁盘快 50 倍的数据磁盘。(不要问为什么这是我们会在需要时修复的东西)
我有一个表,它有 1900 万行,大约有 30 个索引(所以基本上很重要)。
如果我的磁盘速度与数据磁盘相同,那么 LOG 和 tempdb 的磁盘速度会增加多少因素。
编辑: 更多的统计数据。
我们已将 LOG 移至 RAID 数据驱动器作为测试,遗憾的是 REBUILD 的速度没有提高。还是1小时。
数据在它自己的 Raid10 阵列上
RAM > 100 Gb(是 100 Gb)并且对使用它创建数据或索引的 SQL 没有限制
请注意,这不是一个事务系统,而是一个数据仓库。
我似乎找不到设置服务器属性的选项,该选项将使 SQL 数据库备份的压缩默认为 ON,因此我不必每次都手动设置它。
任何人都可以指出我。
sql-server backup sql-server-2008-r2 configuration compression
我们要求向某些人发送成功通知,而其他人则收到失败通知。

但是 UI 似乎只允许 1 个运算符 + 1 个条件的组合。
所以我想知道我们是否可以通过在 MSDB 中事务 sql 来完成?
如果我目前没有空间问题,我应该最初将我的 TempDB 大小设置为一个大空间而不是让它的空间被回收吗?
确定 TempDB 的最佳初始大小的最佳方法是什么?
我的 TempDB 目前为 12GB,并且设置为 10% 自动增长
sql-server ×5
tempdb ×3
backup ×1
compression ×1
disk-space ×1
hardware ×1
index ×1
memory ×1
schema ×1
security ×1
ssas ×1
storage ×1