Параметри інструкції alter database для файлів і файлових груп (transact-sql)

Ім'я змінної бази даних.

Додає файл до бази даних.

Вказує файлову групу, до якої необхідно додати вказаний файл. Щоб відобразити поточну файлову групу і дізнатися, яка файлова група в даний момент встановлена ​​за замовчуванням, використовуйте уявлення каталогу sys.filegroups.

Додає файл журналу в зазначену базу даних.

REMOVE FILE logical_file_name

Видаляє логічне опис файлу з примірника SQL Server і фізичний файл. Файл не може бути видалений, якщо він не порожній.

Логічне ім'я, яке використовується в SQL Server при зверненні до файлу.

Вказує файл, який повинен бути змінений. Одночасно може бути змінено тільки одна властивість . Пропозиція NAME завжди має бути зазначено в , щоб визначити, який файл буде змінений. Якщо вказано пропозиція SIZE, новий розмір файлу повинен бути більше, ніж поточний.

Щоб змінити логічне ім'я файлу даних або файлу журналу, вкажіть логічне ім'я файлу, який буде перейменований, в реченні NAME. а нове логічне ім'я для файлу - в реченні NEWNAME. наприклад:

При переміщенні повнотекстового каталогу вкажіть тільки новий шлях в реченні FILENAME. Не вказуйте ім'я файлу в операційній системі.

Для файлової групи FILESTREAM значення NAME можна змінювати в режимі в мережі. Значення FILENAME можна змінювати в режимі в мережі, але внесена зміна вступає в силу лише після того, як буде виконано фізичне переміщення контейнера, а також зупинка і подальший перезапуск сервера.

Можна задати значення параметра файлу FILESTREAM, рівне OFFLINE. Якщо файл FILESTREAM визначено як поза мережею, його батьківська файлова група відзначається всередині як поза мережею, тому будь-яка спроба доступу до даних FILESTREAM в межах цієї файлової групи закінчиться невдачею.

Управляє властивостями файлу.

Вказує логічне ім'я файлу.

Логічне ім'я, яке використовується екземпляром SQL Server при зверненні до файлу.

Вказує нове логічне ім'я для файлу.

Ім'я, яким буде замінено поточний логічне ім'я файлу. Ім'я повинно бути унікальним в базі даних і відповідати правилам для ідентифікаторів. Ім'я може бути символьної константою або константою Юникода, звичайним ідентифікатором або ідентифікатором з роздільником. Додаткові відомості див. У розділі Використання ідентифікаторів як імена об'єктів.

Задає ім'я файлу в операційній системі (фізичне ім'я).

Для стандартної файлової групи (ROWS) цей параметр являє собою шлях і ім'я файлу, які використовувалися операційною системою при створенні файлу. Файл повинен постійно зберігатися на сервері, на якому встановлений SQL Server. Зазначений шлях повинен існувати до виконання інструкції ALTER DATABASE.

Параметри SIZE, MAXSIZE і FILEGROWTH недоступні, якщо шлях до файлу вказано в форматі UNC.

Системні бази даних не можуть розміщуватися в загальних каталогах UNC.

Файли даних не повинні розташовуватися в стислій файлової системи, крім випадків, коли файли є вторинними файлами тільки для читання або база даних знаходиться в режимі тільки для читання. Файли журналів ні в якому разі не повинні розміщуватися в стислих файлових системах. Додаткові відомості див. У розділі Стиснення і файлові групи тільки для читання.

Якщо файл знаходиться в необробленої секції, аргумент os_file_name повинен вказувати тільки букву диска існуючої необробленої секції. У кожну необроблену секцію може бути поміщений тільки один файл.

Для файлової групи FILESTREAM параметр FILENAME вказує шлях, де будуть зберігатися дані FILESTREAM. Повинен існувати шлях аж до останнього каталогу, але останній каталог існувати не повинен. Наприклад, якщо вказати шлях «C: \ MyFiles \ MyFilestreamData», папка «C: \ MyFiles» повинна існувати до запуску інструкції ALTER DATABASE, а папка «MyFilestreamData» - не повинна.

Файлову групу і файл ( ) Необхідно створювати в одній інструкції. Для файлової групи FILESTREAM може бути тільки один файл ( , ).

Властивості SIZE, MAXSIZE і FILEGROWTH до файлової групі FILESTREAM не належать.

Вказує розмір файлу. Параметр SIZE не застосовується до файлових груп FILESTREAM.

При використанні в інструкції ADD FILE аргумент size є початковим розміром файлу. При використанні в інструкції MODIFY FILE аргумент size є новим розміром файлу і повинен перевищувати поточний розмір файлу.

Якщо аргумент size не заданий для первинного файлу, то компонент SQL Server використовує розмір первинного файлу, вказаний в базі даних model. Коли вказаний вторинний файл даних або журналу, але параметр size для файлу не вказано, компонент Database Engine задає розмір файлу рівним 1 МБ.

Суфікси KB, MB, GB і TB можуть використовуватися для вказівки кілобайт, мегабайт, гігабайт або терабайтов. За замовчуванням - MБ. Вкажіть ціле число без десяткового роздільника. Для вказівки часткою мегабайта перетворіть значення в кілобайти, помноживши число на 1024. Наприклад, вкажіть «1536 KB» замість «1,5 MB» (1,5 x 1024 = 1536) або менших.

Вказує максимальний розмір, до якого може зростати файл. Параметр MAXSIZE не застосовується до файлових груп FILESTREAM.

Максимальний розмір файлу. Суфікси KB, MB, GB і TB можуть використовуватися для вказівки кілобайт, мегабайт, гігабайт або терабайтов. За замовчуванням - MБ. Вкажіть ціле число без десяткового роздільника. Якщо аргумент max_size не вказано, то розмір файлу може збільшуватися до тих пір, поки диск нічого очікувати заповнений.

Вказує, що файл може рости аж до заповнення диска. У SQL Server файл журналу, для якого задано необмежене збільшення розміру, має максимальний розмір 2 ТБ, а файл даних - 16 ТБ.

Задає автоматичне збільшення розміру файлу. Значення параметра FILEGROWTH для файлу не може перевищувати значення параметра MAXSIZE. Параметр FILEGROWTH не застосовується до файлових груп FILESTREAM.

Обсяг простору, який додається до файлу кожного разу, коли потрібне збільшення простору.

Значення може бути зазначено в кілобайтах, мегабайтах, гігабайтах, терабайт або відсотках (%). Якщо вказано число без суфікса MB, KB або%, то за замовчуванням використовується MB. Якщо розмір вказаний в процентах (%), то крок зростання це задана частина у відсотках від розміру файлу під час цього файлу. Зазначений розмір округляється до найближчих 64 КБ.

Значення 0 вказує, що автоматичне збільшення вимкнено і додатковий простір для файлу не дозволено.

Якщо параметр FILEGROWTH не заданий, значенням за замовчуванням є 1 МБ для файлів даних і 10% для файлів журналів, мінімальне значення - 64 КБ.

Перекладає файл в режим поза мережею і робить все його об'єкти в файлової групі недоступними.

Використовуйте цей параметр тільки в тому випадку, коли файл пошкоджений і може бути відновлений. Файл, перекладений в режим OFFLINE, може бути заново включений в режимі в мережі тільки при відновленні з резервної копії. Докладніше про відновлення з копії одного файлу см. В розділі RESTORE (Transact-SQL).

Додати, змінити або видалити файлову групу з бази даних.

ADD FILEGROUP filegroup_name

Додає файлову групу в базу даних.

Вказує, що файлова група зберігає великі двійкові об'єкти (BLOB) FILESTREAM в файлової системі.

REMOVE FILEGROUP filegroup_name

Видаляє файлову групу з бази даних. Файлова група не може бути видалена, поки вона не порожня. Спочатку видаліть з файлової групи всі файли. Додаткові відомості див. Вище в розділі «REMOVE FILE logical_file_name».

Змінює файлову групу, змінюючи її стан на READ_ONLY або READ_WRITE, роблячи її файлової групою за замовчуванням для бази даних або змінюючи ім'я файлової групи.

Встановлює властивість «тільки для читання» або «читання і запис» для файлової групи.

Змінює файлову групу за замовчуванням бази даних на аргумент filegroup_name. Тільки одна файлова група в базі даних може бути файлової групою за замовчуванням. Додаткові відомості див. У розділі Основні відомості про файли і файлових групах.

Змінює ім'я файлової групи на аргумент new_filegroup_name.

Встановлює властивість «тільки для читання» або «читання і запис» для файлової групи.

Визначає, що файлова група знаходиться в стані тільки для читання. Зміна її об'єктів заборонено. Первинну файлову групу перевести в стан тільки для читання можна. Щоб змінити цей стан, необхідно володіти монопольним доступом до бази даних. Додаткові відомості див. В описі пропозиції SINGLE_USER.

Оскільки база даних знаходиться в стані тільки для читання, неможливо виробляти зміни даних:

при запуску системи буде пропущено автоматичне відновлення;

стиснення бази даних неможливо;

в базах даних, що знаходяться в стані тільки для читання, неможливі блокування. Це може привести до більш швидкого виконання запитів.

Ключове слово READONLY буде видалено в майбутній версії Microsoft SQL Server. Уникайте використання ключового слова READONLY в нових розробках і заплануйте зміна додатків, які зараз його використовують. Замість нього використовуйте READ_ONLY.

Визначає, що файлова група знаходиться в стані READ_WRITE. Дозволено змінювати об'єкти в файлової групі. Щоб змінити цей стан, необхідно володіти монопольним доступом до бази даних. Додаткові відомості див. В описі пропозиції SINGLE_USER.

Ключове слово READWRITE буде видалено в майбутній версії Microsoft SQL Server. Уникайте використання ключового слова READWRITE в нових розробках і заплануйте зміна додатків, які зараз його використовують. Замість нього використовуйте READ_WRITE.

Стан цих параметрів може бути визначено за допомогою перевірки значення стовпця is_read_only в поданні каталогу sys.databases або властивості Updateability функції DATABASEPROPERTYEX.

Щоб зменшити розмір бази даних, використовуйте пропозицію DBCC SHRINKDATABASE.

Додати або видалити файл під час виконання інструкції BACKUP неможливо.

Для кожної бази даних може вказуватися не більше 32 767 файлів і 32 767 файлових груп.

переміщення файлів

відновлення після збою. Наприклад, база даних знаходиться в підозрілому режимі або завершила роботу через збій обладнання;

переміщення для запланованого обслуговування дисків.

ініціалізація файлів

За замовчуванням файли даних і журналів не започатковано, заповнюючи нулями, при виконанні однієї з наступних операцій:

створення бази даних;

додавання файлів до існуючої бази даних;

збільшення розміру існуючого файлу;

відновлення бази даних або файлової групи.

Файли даних можуть бути ініційовані миттєво. Це дозволено для швидкого виконання цих файлових операцій. Додаткові відомості див. У розділі Ініціалізація файлів бази даних.