对象 sysmonitors [Sybase] 的权限被拒绝

Permission denied for object sysmonitors [Sybase]

我在执行 Sybase 查询时遇到权限被拒绝的问题。

1.异常:SELECT 对对象 sysmonitors、数据库主机、所有者 dbo 的权限被拒绝。

2。异常:master.dbo.monCachePool 未找到。指定owner.objectname或使用sp_help检查对象是否持久化(sp_help可能会产生大量产品)。

我的数据库是sybasedb,我的用户名是tester,不是sa。对于超级用户 'sa' 没问题,也不例外。但是当我创建普通用户并对其进行测试时,我得到了这些异常。我认为这是权限问题。这就是为什么我授予此用户 'test' 访问这些表的权限。像这样:

但是还是不行。我得到了以上例外。请帮我解决一下。

可能是因为您没有为您的测试用户授予正确的角色。您必须将 mon_role 添加到您的用户才能访问监控表。

grant role mon_role to *username* 

sp_role 'grant', mon_role, *username*

可以在 Performance and Tuning Series: Monitoring Tables

中找到更多信息