Поделиться через


Подключение и отключение баз данных служб Analysis Services

Применимо к: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Часто бывают ситуации, когда администратор базы данных SQL Server Analysis Services (dba) хочет перевести базу данных в автономный режим на период времени, а затем вернуть ее в режим "в сети" на том же экземпляре сервера или на другом экземпляре. Такие ситуации часто обусловлены потребностями предприятия, например необходимостью переместить базу данных на другой диск для повышения производительности, освободить место для увеличения размера базы данных или при обновлении какого-либо продукта. Для всех этих и других случаев команды Attach и Detach позволяют SQL Server Analysis Services dba перевести базу данных в автономный режим и вернуть ее в режим "к сети" без особых усилий.

Команды Attach и Detach

Команда Attach позволяет перевести базу данных из режима «вне сети» в режим «в сети». База данных может быть присоединена как к исходному, так и к любому другому экземпляру сервера. При присоединении базы данных пользователь может указать для нее значение свойства ReadWriteMode . Команда Detach позволяет перевести базу данных на сервере в режим «вне сети».

Использование команд Attach и Detach

Команда Attach позволяет перевести в режим «в сети» существующую структуру базы данных. Если база данных присоединена в режиме ReadWrite , она может быть присоединена к экземпляру сервера только один раз. Если же база данных присоединена в режиме ReadOnly , она может быть присоединена к нескольким экземплярам сервера. Это, однако, не означает, что база данных может быть присоединена к одному экземпляру сервера более одного раза. Если попытаться сделать это (даже после копирования данных в другую папку), будет выдана ошибка.

Важно!

Если для отсоединения базы данных потребовался пароль, для ее присоединения необходим тот же пароль.

Команда Detach позволяет перевести в режим «вне сети» существующую структуру базы данных. При отсоединении базы данных можно указать пароль для защиты конфиденциальных метаданных.

Важно!

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

При отсоединении базы данных сервер выполняет следующие шаги.

Отсоединение базы данных в режиме чтения и записи Отсоединение базы данных в режиме только для чтения
1. Сервер выполняет запрос блокировки CommitExclusive для базы данных.

2. Сервер ожидает, пока все входящие транзакции завершатся фиксацией или откатом.

3. Сервер формирует все метаданные, необходимые для отключения базы данных.

4. База данных помечается как удаленная.

5. Сервер фиксирует транзакцию.
1. База данных помечается как удаленная.

2. Сервер фиксирует транзакцию.

Примечание. Нельзя сменить пароль для базы данных в режиме только для чтения. Если указать пароль для присоединяемой базы данных, уже защищенной паролем, возникнет ошибка.

Команды Attach и Detach должны выполняться в пределах одной операции. Они не могут сочетаться в одной транзакции с другими операциями. Кроме того, команды Attach и Detach являются атомарными транзакционными командами. Это означает, что только вся операция целиком может завершиться либо успешно, либо неуспешно. База данных не может остаться в незавершенном состоянии.

Важно!

Чтобы выполнить команду Detach , необходимы права администратора сервера или базы данных.

Важно!

Чтобы выполнить команду Attach , необходимы права администратора сервера.

См. также:

Перемещение базы данных служб Analysis Services
Режимы ReadWriteModes базы данных
Переключение базы данных служб Analysis Services между режимами ReadOnly и ReadWrite
Элемент Detach
Элемент Attach