Crescimento automático do SQL Server 2005 por tamanho

Eu estive olhando para o novo servidor de banco de dados que estamos configurando para um cliente e observe que os arquivos de banco de dados estão configurados para aumentar em 1 meg cada vez que o arquivo estiver cheio e o tamanho inicial for 100 MB.

Eu tenho pensado nisso e não parece certo. Verifiquei alguns sites sobre considerações de banco de dados e eles não explicaram corretamente esses valores.

Eu provavelmente só quereria os arquivos de banco de dados para estender uma vez por mês, digamos?

Então, se eu fosse calcular a quantidade de dados que eu esperava ser inserida por dia em megabytes e apenas multiplicar por 30, eu deveria encontrar uma figura adequada?

i.e. I do know approximately the size of 1 row and approx how many rows will be inserted in an average week per table. I know these are estimates from the ground up so you think once a month is a suitable approximation for the file to extend or is it preferable to extend every hour>? or never?

Estamos usando o back-back para que possamos recuperar em um ponto no tempo e os backups de log de transação estão ocorrendo e o procedimento de recuperação parece ser 100% eficaz. Esses tipos de alterações afetarão o backup e a recuperação de alguma forma?

Obrigado.

3

6 Respostas

O que você sugeriu é praticamente perfeito. Você quer que o crescimento automático seja baseado no que você espera ver.

Um banco de dados com crescimento automático de 1Mb toda vez que ele estiver cheio terá grandes problemas de desempenho, pois sempre que o banco de dados estiver cheio, qualquer transação que estiver em andamento terá que ser interrompida até que ele cresça.

Estou tentando encontrar um artigo que li sobre o assunto antes, então quando eu encontrar, vou adicionar um link ...

EDITAR: http: //searchsqlserver.techtarget.com/tip/0,289483,sid87_gci1330922,00.html O artigo trata da redução de seu banco de dados, mas detalha o que acontece quando um banco de dados cresce automaticamente e mostra o impacto no desempenho que ele pode ter.

Você definitivamente não quer que seu banco de dados cresça com a mesma freqüência que faria com 1Mb de pop!

3
adicionado

Na minha opinião, eu NÃO definiria um banco de dados para crescer em porcentagens, em vez disso deixaria o banco de dados crescer por uma semana a 100 MB e, em seguida, alteraria a configuração de crescimento para uma semana de crescimento, digamos 5 GB. Temos sistemas para os quais fizemos isso.

Caso contrário, você pode ficar realmente técnico e ver quantos registros estão sendo adicionados ao sistema toda semana, levar em conta registros que são arquivados ou excluídos, calcular a quantidade de espaço necessária para cada registro e definir seu crescimento automático com base nesses tempos o número de registros.

A razão pela qual eu afastei uma pessoa do crescimento percentual é que quando o sistema é de 1000 MB, ele crescerá em 100 MB. Então, na próxima vez, o sistema terá 1100 MB e crescerá meus 110 MB. O tamanho será então 1210 e o banco de dados crescerá em 121 MB. Em seguida, o tamanho será 1331 e o crescimento será de 133 MB. Com esse crescimento irregular, será muito difícil calcular quanto espaço em disco você tem e quando você precisa redimensionar sua configuração máxima.

Apenas meus 2 centavos de distância.

Além disso, o crescimento padrão mencionado acima é definido no banco de dados MODEL. O que nunca configurações seu banco de dados MODEL tem quando você cria um novo banco de dados é o que é padronizado em seu novo banco de dados.

2
adicionado

Toda vez que o arquivo de dados tem que crescer, ele ocupa uma certa quantidade de recursos à medida que captura o espaço extra em disco e estende o arquivo de dados. Então, idealmente, você quer limitar o número de crescimentos.

Pessoalmente, tento ter certeza de que meus bancos de dados não precisam crescer automaticamente. Eu tento cultivá-las proativamente durante as horas de folga. Isso também me permite monitorar melhor o espaço em disco, já que não é fácil "auto-crescer";)

Se eles crescerem automaticamente uma vez por mês, tudo ficará bem. A cada minuto, você provavelmente verá um impacto no desempenho.

Além do backup, potencialmente ocupando mais espaço e preenchendo o seu local de backup, não consigo pensar em qualquer motivo que possa causar um problema com o processo de backup. Eu sou mais um desenvolvedor SQL do que um DBA, então eu não posso jurar sobre isso.

0
adicionado

Além de algum espaço alocado redundante, há pouca ou nenhuma desvantagem em um incremento de tamanho grande. Definir o incremento para um tamanho que fará com que ele cresça a cada mês ou alguns meses é quase certo.

Em qualquer caso, você deve ter um trabalho regular que monitore o espaço livre nos volumes de disco e dentro dos arquivos e produza um relatório para que você possa ver uma escassez de disco iminente.

0
adicionado

Você geralmente está certo em tentar minimizar o número de vezes em que seu banco de dados precisa crescer.

Eu não poderia dar a você qualquer valor exato, mas é sempre melhor ter o tamanho do arquivo de banco de dados tão grande que você só precisaria crescer ocasionalmente e então ele teria que crescer consideravelmente para que você não tivesse alterações frequentes no tamanho do arquivo.

0
adicionado

Acabei de fazer check-in no SQL Server Management Studio 2008 e o crescimento padrão quando você cria um novo banco de dados é de 1 MB ... provavelmente é onde sua configuração de 1MB veio (aposto que foi o mesmo em 2005).

Lembro-me de ler há muito tempo que se poderia considerar a configuração de seu arquivo de banco de dados para duplicar toda vez que ele precisasse crescer. Agora, se você tivesse um banco de dados de 5 TB você provavelmente não iria querer apenas dobrar um dia, mas para um banco de dados de 1GB provavelmente seria legal se ele dobrasse quando necessário (você teria uma taxa decadente de eventos de crescimento se você tem uma taxa constante de entrada de dados).

Só queria apresentar o que eu acho que poderia ser uma estratégia viável, dependendo das circunstâncias, é claro.

0
adicionado