Quando eu reindexo uma tabela específica
DBCC DBREINDEX(@TableName, '',90)
eu recebo um erro
Nível 17, Estado 2, Procedimento aareindex, Linha 21 [Linha inicial do lote 0] Não foi possível alocar espaço para o objeto 'dbo.SORT armazenamento de execução temporária: 422738479742976' no banco de dados 'mydatabase' porque o grupo de arquivos 'PRIMARY' está cheio. Crie espaço em disco excluindo arquivos desnecessários, descartando objetos no grupo de arquivos, adicionando arquivos adicionais ao grupo de arquivos ou definindo o crescimento automático para arquivos existentes no grupo de arquivos.
Então eu quero tentar aumentar o tamanho do TempDb
Posso ver o tamanho usando o SSMS observando as propriedades do banco de dados, mas não vejo como configurá-lo.
[Atualizar]
select type_desc, name, size, max_size, growth from tempdb.sys.database_files
retorna
O tamanho do arquivo já é 10236 Mb e o limite Express é 10 Gig. No entanto, o relatório Disk Usage mostra que 26% do espaço em disco não é alocado, 40% são dados e 32% são índices.
Você não precisa aumentar o tamanho do temp db.
Está dizendo que não pode gravar em seu grupo de arquivos primário está cheio (c:\path to database\mydatabase.mdf). Ou não há espaço em disco onde o MDF está armazenado, ou a causa mais provável é que seu grupo de arquivos primário não tem mais espaço disponível para gravar.
Você pode resolver isso de algumas maneiras diferentes
Na GUI
Em SSMS:
Instrução SQL Alterar
Se o banco de dados do usuário
data file size
atingiu seu limite (10 Gb na Express Edition), mas 26% do espaço em disco não foi alocado, você pode tentarrebuild
seus índicessort
comtempdb
.DBCC DBREINDEX
isdeprecated
e não há motivo para usar emSQL Server 2017
, e comalter index..rebuild
você pode indicar que deseja realizarsort
emtempdb
:Quando você cria
rebuild
um índice, primeiro você precisaspace
construir a cópia do seuindex
(e esse espaço será alocado no seudb
) e para construí-lo você também precisa do espaço para fazersort
, esse espaço pode ser alocado notempd
. No seu caso, o erro dizia claramente que não haviaspace
o que fazersort
no seu banco de dados, então talvez você resolva seu problema se osort
for executado emtempdb
.Você pode ler mais sobre isso aqui: SORT_IN_TEMPDB Option For Indexes