Я использую SQL Server 2008 R2 и создаю базы данных путем непрерывного развертывания.
В нашей системе стандартные параметры автоматического наращивания 1Mb / 10% в SQL Server плохо работают с нашими данными. Тем более, что у нас есть устаревшее приложение, которое не позволяет нам сильно изменять схему. Мы бы хотели, чтобы параметры базы данных были настроены на уровне экземпляра, чтобы мы могли изменить его для поэтапного развертывания.
Я читал в нескольких местах, что настройки по умолчанию для новой базы данных основаны на настройках «модели», но, похоже, это работает только при нажатии новой базы данных в пользовательском интерфейсе SQL Management studio, а не в сценарии, например, CREATE DATABASE [MyDb].
msdn.microsoft.com/en-us/library/ms186388(v=sql.105).aspx
sqlservercentral.com/Forums/Topic1065073-391-1.aspx
Кто-нибудь на самом деле получил это для работы со скриптом создания? Есть ли другой способ, которым я могу установить автоматический рост для экземпляра сервера?
источник
CREATE DATABASE
почему вы не можете просто указать это в своем сценарии?Ответы:
Для SQL Server 2005+ вы можете использовать следующее:
Это позволит получить определения файлов для базы данных моделей.
Позже вы можете использовать его либо в CREATE DATABASE, либо в ALTER DATABASE.
SSMS фактически использует SMO для получения этих параметров, а затем создает скрипт, который выглядит следующим образом:
Если ваше приложение создает базу данных, и вы не можете изменить приложение -
тогда вы должны использовать ALTER DATABASE после завершения создания:
Для этого требуется как минимум разрешение ALTER DATABASE
(подразумеваемое ALTER ANY DATABASE Server Permission).
Очевидно, вы можете сгенерировать этот скрипт, используя первый пример кода (FROM sys.master_files).
Я бы не использовал sysaltfiles для SQL Server 2008R2, потому что он устарел.
Удачи
Рой
источник
Как насчет:
источник