SQL 2008. sp_attach_db. Unable to open the physical file

Alexes
Дата: 02.02.2009 16:45:37
Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (X64)
Jul 9 2008 14:17:44
Copyright (c) 1988-2008 Microsoft Corporation
Enterprise Edition (64-bit) on Windows NT 6.0 <X64> (Build 6001: Service Pack 1)

Такой вызов:
exec sp_attach_db 'new_db', 'f:\db_work\new_db.mdf','f:\db_work\new_db_log.ldf'
выдаёт следующую ошибку:
Msg 5120, Level 16, State 101, Line 1
Unable to open the physical file "f:\db_work\new_db.mdf". Operating system error 5: "5(failed to retrieve text for this error. Reason: 15105)".


У локальной группы (в которую входит учётная запись, под которой работает sql), создаваемой инсталлятором, есть полный доступ на 'f:\db_work. На mdf и ldf тоже.

sp_attach_db вызывается пользователем с правами sysadmin.

Почему не хватает прав и что делать?
Glory
Дата: 02.02.2009 16:50:35
f - это локальный диск ?
pkarklin
Дата: 02.02.2009 16:50:59
Alexes
У локальной группы (в которую входит учётная запись, под которой работает sql), создаваемой инсталлятором, есть полный доступ на 'f:\db_work. На mdf и ldf тоже.


А винда говорит об обратном.
mike909
Дата: 02.02.2009 16:53:35
Alexes,

1) Файлы случайно не с атрибутом ReadOnly ?
2) Если кластер, то есть ли зависимость SQL_я от диска ?
3) Диск случайно не сетевой ?
4) FileMonitor от www.sysinternals.com что говорит ?
Alexes
Дата: 02.02.2009 17:18:56
mike909
Alexes,

1) Файлы случайно не с атрибутом ReadOnly ?
2) Если кластер, то есть ли зависимость SQL_я от диска ?
3) Диск случайно не сетевой ?
4) FileMonitor от www.sysinternals.com что говорит ?


1. Нет
2. Не кластер
3. SAN
4. Нет такой возможности.

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

Эх... Внимательнее нужно было мне читать BOL.
Вот что утверждает BOL:
BOL

Присоединение и отсоединение базы данных
При присоединении и отсоединении базы данных компонент Database Engine пытается олицетворить учетную запись Windows соединения, выполняющего операцию, чтобы обеспечить учетную запись необходимыми разрешениями для доступа к файлам баз данных и файлам журналов. В случае использования учетных записей смешанного режима безопасности, использующих имена входа SQL Server, попытка олицетворения может завершиться ошибкой.

И ниже табличка. Правильно ли я понимаю, что если бы подключение было с использованием аутентификации SQL server, то эти проблемы не возникли бы?
pkarklin
Дата: 02.02.2009 17:30:20
Alexes
Правильно ли я понимаю, что если бы подключение было с использованием аутентификации SQL server, то эти проблемы не возникли бы?


C точностью до наоборот.
Alexes
Дата: 02.02.2009 17:39:42
pkarklin
C точностью до наоборот.

Почему они возникли бы? Я так понял, что проверялись бы права учётной записи сервиса...
pkarklin
Дата: 02.02.2009 17:40:48
В случае использования учетных записей смешанного режима безопасности, использующих имена входа SQL Server, попытка олицетворения может завершиться ошибкой.
Alexes
Дата: 02.02.2009 17:44:59
pkarklin
В случае использования учетных записей смешанного режима безопасности, использующих имена входа SQL Server, попытка олицетворения может завершиться ошибкой.

Да, я это прочитал. Меня заинтересовало слово "может". При каких обстоятельствах "может"?
pkarklin
Дата: 02.02.2009 17:47:04
Alexes
Да, я это прочитал. Меня заинтересовало слово "может". При каких обстоятельствах "может"?


Ну как можно выполнить олицетворение не виндового логина?!