如何将sys.databases
的结果限制为可用的数据库?
我们正在更改为在sql-server 2017上运行的可用性组和副本服务器。
在此之前,我在master-database上运行了一个select语句,以查看服务器上运行的是哪个日期库(select name, state from sys.databases
),然后让用户选择一个数据库并建立与数据库的连接以进一步sql-语句。
但现在在具有可用性组和副本服务器的新系统上,当我打开与单一可用性组的连接时,我看到了更多无法连接的数据库。
select语句显示所有数据库,即使它们属于另一个可用性组(它们由同一副本服务器托管)。
问题是对于dbo来说,确定哪些数据库属于可用性组(sys.availabiltiy
- Views)没有问题,但普通用户没有查看这些sys-Views所需的权限我不想给他view_server_stats
角色。