查看服务器状态并查看 SQL 托管实例中的所有定义
Posted
技术标签:
【中文标题】查看服务器状态并查看 SQL 托管实例中的所有定义【英文标题】:View Server State and View All Definitions in SQL Managed Instance 【发布时间】:2019-03-27 15:17:51 【问题描述】:SQL 托管实例的新手。目前我正在 Azure 托管实例中测试我们的 on-prem SQL databases
。我们的应用程序数据库中有一些记录程序正在收集信息以保存在审计跟踪中。其中一些引用了一些 DMV,例如 sys.dm_exec_connections and sys.dm_exec_sql_text
。
使用 MI 管理员用户访问这些可以正常工作。但是,将访问数据库的是 AD 服务帐户。此服务帐户似乎无权访问这些。
服务帐户已添加到数据库中的 db_owner 角色,但我无法在服务器或数据库级别设置查看服务器状态和查看所有定义权限。我在托管实例中看不到任何可能等效的东西。
有谁知道如何以及在哪里寻找来解决这个问题?
我什至尝试过使用实例的 AD Admin 帐户。
非常感谢。
【问题讨论】:
【参考方案1】:对于这种情况,请使用 sql 登录而不是 AAD 登录/用户。
在托管实例的当前版本中,您可以创建没有完全服务器管理员权限的全局 AAD 管理员,也可以创建包含的 AAD 用户为 CREATE USER myusr FROM EXTERNAL_PROVIDER
,因为在服务器上授予权限,所以无法获得服务器级权限级别可以赋予服务器级登录而不是数据库级用户。
未来我们将提供与现有 Windows 登录非常相似的更好的 AAD 登录,但与此同时,如果您尝试使用现有的 AAD 登录/用户设置此场景可能会很痛苦。
【讨论】:
以上是关于查看服务器状态并查看 SQL 托管实例中的所有定义的主要内容,如果未能解决你的问题,请参考以下文章