我在Azure上创建了SQL数据库。我试图从SQL Server Management中清除缓存 使用:
DBCC FREEPROCCACHE,DBCC FREESYSTEMCACHE(' dbo')
不幸的是我没有成功。 我收到了错误
用户' dbo'没有权限运行DBCC freesystemcache。
这怎么可能,因为dbo是数据库的所有者?
答案 0 :(得分:2)
与上一个答案中所述的@MJH一样,执行此操作需要ALTER SERVER STATE权限。文章DBCC FREESYSTEMCACHE (Transact-SQL)也清楚地显示不适用于Azure SQL数据库。
由于Azure SQL是托管服务,因此将由平台处理。
答案 1 :(得分:0)
请使用以下语句代替DBCC FREEPROCCACHE:
ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE
ALTER DATABASE SCOPED CONFIGURATION语句需要对数据库具有ALTER ANY DATABASE SCOPE CONFIGURATION权限。具有数据库CONTROL权限的用户可以授予此权限。