Во время прерванного импорта TFS (с 2008 по 2010 год) мне удалось «потерять» базу данных в 2008 году. База данных не отображается в Management Studio, но исполняемый файл SQL Server имеет дескриптор файла .mdf (согласно UnLocker) , он говорит, что не может прикрепить его, потому что файл используется, и он не может прикрепить копию файла (созданного при остановке SQL Server), поскольку он говорит, что БД с тем же именем уже прикреплена.
Учитывая, что я использую ту же учетную запись администратора TFS, которую я всегда использовал и всегда мог видеть базу данных, почему эта база данных отсутствует и, что более важно, как мне вернуть ее снова?
Может показаться глупым, но ... пробовали ли вы перезапустить службу SQL Server?
Иногда блокировки файлов просто застревают без видимой причины.
Это довольно странно!
Возможно ли, что у вас есть другой именованный экземпляр SQL-сервера, и к нему прикреплена база данных?
Вы входите на сервер sql как системный администратор или sa и все еще не видите базу данных? Если вы не являетесь пользователем и не являетесь пользователем в этой базе данных, возможно, вы не сможете увидеть ее с вашим текущим логином.
В ПРОСМОТРЕТЬ ЛЮБУЮ БАЗУ ДАННЫХ в разрешении может быть отказано в вашем текущем входе в систему или разрешение может быть отозвано для публичной роли.
Самый простой способ исправить это - сделать вашу учетную запись пользователя TFS (логин) пользователем в базе данных.
Есть ли у вас доступ для просмотра всей активности базы данных, то есть для просмотра открытых соединений с этой базой данных? Если вы видите, что процесс работает с этим именем базы данных, вы можете попробовать убить процесс.
У меня была такая проблема с БД, заблокированной Management Studio по непонятной причине, и убийство SPID отсортировало ее, чтобы я мог продолжить обслуживание, которое я пытался сделать.
Попробуйте запустить процедуру sp_who2 в окне запроса.