1

我们的一个 Azure SQL 数据库最近空间不足,我认为这导致查询存储切换到“READ_ONLY”。

我增加了数据库的大小,但这并没有导致状态发生变化,即使运行了这个查询:

SELECT desired_state_desc, actual_state_desc, readonly_reason, current_storage_size_mb, max_storage_size_mb 
FROM sys.database_query_store_options

提示有足够的​​可用空间:

desired_state_desc  actual_state_desc   readonly_reason current_storage_size_mb max_storage_size_mb
READ_WRITE          READ_ONLY           524288          522                     1024

我尝试通过运行以下语句(作为数据库服务器管理员用户)将查询存储状态更改为 Read_Write:

ALTER DATABASE [QueryStoreDB]   
SET QUERY_STORE (OPERATION_MODE = READ_WRITE)

但是,该语句失败并出现以下错误:

User does not have permission to alter database 'QueryStoreDB', the database does not exist, or the database is not in a state that allows access checks.

是否有人设法将 SQL Azure Query Store 切换为 READ-WRITE,以便再次开始收集性能统计信息?

4

1 回答 1

2

首先,让我们尝试清除查询存储:

ALTER DATABASE [QueryStoreDB]   
SET QUERY_STORE CLEAR;  
GO

如果这不起作用,让我们运行一致性检查。

ALTER DATABASE [DatabaseOne] SET QUERY_STORE = OFF;  
GO
sp_query_store_consistency_check
GO
ALTER DATABASE [DatabaseOne] SET QUERY_STORE = ON;  
GO

在以下文章中尝试更多选项来解决此问题

于 2017-10-11T13:42:17.143 回答