As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Adicionar e balancer arquivos de dados
Os bancos de dados SQL Server fornecidos com o EnterpriseOne geralmente podem se beneficiar de arquivos adicionais. Os arquivos adicionais permitem o balanceamento ideal entre o armazenamento e os núcleos do processador. O balanceamento dos arquivos é um processo de várias etapas. Muitas dessas etapas exigem acesso exclusivo aos objetos do banco de dados. Por isso, seria necessário colocar o EnterpriseOne e outros sistemas offline.
Cálculos completos dos tamanhos dos arquivos
Para encontrar o tamanho apropriado dos arquivos de banco de dados, comece examinando o tamanho dos dados de LINHAS atuais usando a consulta a seguir.
USE JDE_PRIST920 SELECT SUM(CAST(FILEPROPERTY(name, 'SpaceUsed') AS INT)/128.0) AS SpaceUsedMB FROM sys.database_files WHERE type IN (0,1) AND type_desc = 'ROWS'
Depois, conclua os cálculos abaixo e preencha a coluna Seu valor:
Linha | Nome | Exemplo | Seu valor | Descrição |
---|---|---|---|---|
1 | Tamanho atual da linha | 1 TB | Os resultados da consulta anterior. | |
2 | Crescimento planejado | 20% | Crescimento esperado nos próximos meses, incluindo uma margem de segurança. | |
3 | Tamanho necessário | 1,2 TB | Linha 1 multiplicada pela linha 2. | |
4 | Número de arquivos | 8 | O número de arquivos em questão. | |
5 | Tamanho por arquivo | 150 GB | Linha 3 dividida pela linha 4. | |
6 | Percentual de crescimento automático | 10% | O tamanho para crescimento automático. Para uma fragmentação mínima, 10% é uma boa meta. | |
7 | Tamanho do crescimento automático | 15 GB | Linha 5 multiplicada pela linha 6. |
Criação de novos arquivos
Use o script a seguir como modelo para adicionar arquivos ao banco de dados. Modifique os seguintes parâmetros:
-
Altere
JDE-PRIST920
para o nome do banco de dados ao qual deseja adicionar arquivos. -
Para
NAME
, especifique o nome lógico de cada arquivo que deseja adicionar. -
Para
FILENAME
, especifique o nome físico de cada arquivo que deseja adicionar. -
Para
FILEGROWTH
, use o valor calculado na linha 7 da tabela anterior. -
Para
SIZE
, especifique o valor da linha 5 da tabela anterior.
USE master; GO ALTER DATABASE JDE_PRIST920 MODIFY FILE (NAME = JDE_PRIST920_Data, FILEGROWTH = 15GB); GO ALTER DATABASE JDE_PRIST920 ADD FILE (NAME = JDE_PRIST920_Data2, FILENAME = 'M:\DATA\PRIST920_Data2.ndf', SIZE=150GB, FILEGROWTH = 15GB), (NAME = JDE_PRIST920_Data3, FILENAME = 'M:\DATA\PRIST920_Data3.ndf', SIZE=150GB, FILEGROWTH = 15GB), (NAME = JDE_PRIST920_Data4, FILENAME = 'M:\DATA\PRIST920_Data4.ndf', SIZE=150GB, FILEGROWTH = 15GB), (NAME = JDE_PRIST920_Data5, FILENAME = 'M:\DATA\PRIST920_Data5.ndf', SIZE=150GB, FILEGROWTH = 15GB), (NAME = JDE_PRIST920_Data6, FILENAME = 'M:\DATA\PRIST920_Data6.ndf', SIZE=150GB, FILEGROWTH = 15GB), (NAME = JDE_PRIST920_Data7, FILENAME = 'M:\DATA\PRIST920_Data7.ndf', SIZE=150GB, FILEGROWTH = 15GB), (NAME = JDE_PRIST920_Data8, FILENAME = 'M:\DATA\PRIST920_Data8.ndf', SIZE=150GB, FILEGROWTH = 15GB), (NAME = JDE_PRIST920_TEMP, FILENAME = 'M:\DATA\PRIST920_TEMP.ndf', SIZE=150GB, FILEGROWTH = 15GB) GO
Esvaziamento temporário do arquivo MDF
Quando os arquivos tiverem sido criados, migre os dados dos arquivos MDF para os arquivos NDF executando o comando a seguir para cada arquivo. Ajuste os nomes dos arquivos para refletir os nomes dos arquivos em seu banco de dados.
USE JDE_PRIST920 DBCC SHRINKFILE (JDE_PRIST920_Data, EMPTYFILE)
O comando EMPTYFILE
gera um erro porque não foi possível mover algum conteúdo para um arquivo NDF. Essa mensagem de erro pode ser ignorada.
Redimensionamento do arquivo MDF
Para reduzir o tamanho do arquivo MDF para o tamanho pretendido, execute o comando a seguir. Ajuste o tamanho do arquivo para refletir o valor da linha 5 do cálculo na tabela.
JDE_PRIST920 DBCC SHRINKFILE (JDE_PRIST920_Data, 150000);
Ocasionalmente, o comando SHRINKFILE
falhará devido ao posicionamento do conteúdo que não pode ser movido para um arquivo NDF. Para esse caso, talvez seja necessário executar o comando DBCC DBREINDEX
, executar novamente o processo para esvaziar o arquivo e tentar a operação SHRINKFILE
novamente.
Limpeza
Quando os arquivos de destino tiverem sido criados e o arquivo MDF estiver dimensionado corretamente, use o comando a seguir para migrar os dados do arquivo TEMP de volta para o arquivo MDF. Ajuste os nomes dos arquivos para refletir os nomes dos arquivos em seu banco de dados.
DBCC SHRINKFILE (JDE_PRIST920_TEMP, EMPTYFILE)
Quando o arquivo estiver vazio, você poderá removê-lo usando o seguinte comando:
ALTER DATABASE JDE_PRIST920; REMOVE FILE JDE_PRIST920_TEMP;
Resultados da validação
Para verificar a utilização atual do espaço em disco do banco de dados após o balanceamento, execute os scripts a seguir.
USE JDE_PRIST920 SELECT DB_NAME() AS DbName, type_desc, CAST(FILEPROPERTY(name, 'SpaceUsed') AS INT)/128.0 AS SpaceUsedMB FROM sys.database_files WHERE type IN (0,1) AND type_desc = 'ROWS'; SELECT SUM(CAST(FILEPROPERTY(name, 'SpaceUsed') AS INT)/128.0) AS TotalSpaceUsedMB FROM sys.database_files WHERE type IN (0,1) AND type_desc = 'ROWS'
A saída deve ser semelhante a esta. Os arquivos raramente estarão perfeitamente balanceados, pois alguns conteúdos só podem existir no arquivo MDF.