каким должен быть мой начальный размер базы данных - PullRequest
5 голосов
/ 09 июля 2010

Я перемещаю базу данных из MySQL в SQLServer.При создании базы данных, какой я должен установить начальный размер?Я знаю, что размер импортированной базы данных будет около 130 МБ, но будет расти.Должен ли 130 МБ быть начальным размером или я должен просто взять значение по умолчанию 2 МБ?

Ответы [ 5 ]

3 голосов
/ 09 июля 2010

Установите его, по крайней мере, на текущий размер, возможно, с приличным буфером для немедленного роста во время миграции. В зависимости от темпа роста я бы сделал что-то вроде:

По умолчанию: 150 МБ (или 200 МБ, если размер не является проблемой)

Автостров: да

Размер автоматического роста: от 5 до 25 МБ (в зависимости от ваших ожиданий роста)

3 голосов
/ 09 июля 2010

Вы должны выбрать правильный размер для ваших данных, вы получите удар по производительности, когда файл будет расти.

Это зависит от того, насколько быстро он будет расти, я бы сказал, 150 МБ с 10% Autogrowth.

Есть совет по MSDN , который стоит прочитать.

1 голос
/ 11 декабря 2013
USE MASTER;
GO
CREATE DATABASE StackOverflowDatabase
ON 
( NAME = 'StackOverflowDatabase',
    FILENAME = 'C:\Program Files\Microsoft SQL Server\Your version\MSSQL\DATA\SO_db.mdf',
    SIZE = 200MB,
    MAXSIZE = UNLIMITED,
    FILEGROWTH = 50MB )
LOG ON
( NAME = 'StackOverflowDatabase_log',
    FILENAME = 'C:\Program Files\Microsoft SQL Server\Your version\MSSQL\DATA\SO_db.ldf',
    SIZE = 20MB,
    MAXSIZE = 50MB,
    FILEGROWTH = 10MB ) ;
GO
0 голосов
/ 24 августа 2013

Одна вещь, которую вы должны выяснить, - это как быстро растет БД.

Если скорость роста мала (скажем, 1 МБ / неделя)

Для MDF:

Установить начальный размер на 200 МБ

Установить автоматический рост до 100 МБ (что составляет 50% от исходного размера)

Для LDF,

Установить начальныйразмер до 20-50 МБ (что составляет 10-25% от начального размера файла MDF)

Установите автоматическое увеличение до 10-25 МБ (что составляет 50% от начального размера файла LDF).)

Избегайте использования% для автоматического роста, поскольку он непредсказуем.Например, если вы укажете процент для автоматического роста, а размер БД увеличится до 300 МБ, это означает 30 МБ.Если размер вашей БД увеличивается до 500 МБ, это означает 50 МБ.С другой стороны, если вы используете МБ, то вы уверены, что БД всегда будет увеличивать количество МБ, которое вы установили.

0 голосов
/ 10 июля 2010

200 МБ с автоматическим ростом 50 МБ - правильное решение.Не забывайте использовать отдельные диски для базы данных tempdb и, если возможно, размещайте свои журналы на разных дисках и своих данных, если вам нужна более высокая производительность.Кроме того, помните, что ваши данные могут занимать 130 МБ, но вам также нужно подумать о своих индексах и о том, сколько места они будут использовать.Кроме того, даже если у вас есть файл данных объемом 200 МБ, ваши файлы резервных копий будут намного меньше, что часто является реальной проблемой, когда речь идет о таких маленьких БД, как этот.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...