Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как перенести индексы из одной FILEGROUP в дургую  [new]
Alexx2
Member

Откуда:
Сообщений: 2
Добрый день.
Имеется база, в которой только 1 filegroup - PRIMARY. Есть желание создать еще одну [secondary] и перенести туда все некластерные индексы.
Вопрос как это сделать в (полу)автоматическом режиме, дабы не тыкать на каждый индекс и не указывать ему новую группу?
Я так понимаю надо сначала дропнуть все эти индексы, а затем создать уже в новой файлгруппе.. но с этим у меня сложности в плане скриптонаписания.

В идеале для всей базы [baza] сразу, но можно и просто для конкретной таблицы [table1].

Microsoft SQL Server 2005 - 9.00.5069.00 (X64) Aug 22 2012 18:02:46 Copyright (c) 1988-2005 Microsoft Corporation Enterprise Edition (64-bit) on Windows NT 5.2 (Build 3790: Service Pack 2)
14 ноя 13, 11:48    [15126736]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести индексы из одной FILEGROUP в дургую  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
В инструкции CREATE INDEX есть опция DROP_EXISTING.
14 ноя 13, 11:53    [15126778]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести индексы из одной FILEGROUP в дургую  [new]
Alexx2
Member

Откуда:
Сообщений: 2
pkarklin
В инструкции CREATE INDEX есть опция DROP_EXISTING.

да, но как мне создать эти индексы автоматом? Их же там тысячи со своими именами
14 ноя 13, 11:59    [15126817]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести индексы из одной FILEGROUP в дургую  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
По правой педали в SSMS на базе данных: Task->Generate SQL Scripts. Отметьте все таблицы, на Set Script Options по кнопке Advanced поставьте в TRUE Script Indexes и в False лишнее. Получите скрипт и доработайте его руками, удалив лишнее и внеся изменения.
14 ноя 13, 12:35    [15127164]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести индексы из одной FILEGROUP в дургую  [new]
ZOOKABAKODER
Member

Откуда:
Сообщений: 178
Alexx2
pkarklin
В инструкции CREATE INDEX есть опция DROP_EXISTING.

да, но как мне создать эти индексы автоматом? Их же там тысячи со своими именами

Электрооболочкой AKA powershell можно: sqlps.exe .
14 ноя 13, 13:12    [15127563]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить