Я получил файл базы данных и инструкции по его загрузке, чтобы установить SQL Server 2005 и затем присоединить его с помощью SQL Server Management Studio.
После установки все, я пытался прикрепить файл MDF, но затем он говорит мне:
поиск в каталоге для файла "D: {имя_папки} {имя_файла} .LDF" завершился ошибкой операционной системы 21 (ошибка не найдена)
Файл LDF не поставляется с базой данных, поэтому, вероятно, он должен быть сгенерирован автоматически.
Теперь D-диск - это то место, где находится мой CD-привод, так что он там ничего не найдет. Не удастся создать что-то там.
Почему он пытается найти файл журнала по определенному пути? Почему не там, где находится файл базы данных?
Как я могу прикрепить эту базу данных?
Я понял, что когда я выбираю базу данных для присоединения, под «подробностями базы данных» появляются три записи. MDF, NDF и LDF. «Текущий путь к файлу» LDF указывает на путь диска D выше, поэтому я удалил его.
На этот раз, когда я нажимаю «ОК», я получаю другое сообщение об ошибке:
База данных не может быть обновлена, потому что она доступна только для чтения или имеет файлы только для чтения.
Сделайте базу данных или файлы доступными для записи и перезапустите восстановление.Ошибка активации файла. Физическое имя D: {папка} {файл} .LDF может быть неправильным.
Новый файл журнала "..." создан. (Microsoft SQL Server, ошибка: 3415)
Поэтому теперь он создает новый файл журнала в той же папке, что и файл базы данных, и это здорово, но, похоже, есть проблемы с безопасностью.
Дополнительная информация:
Инструкции требуют, чтобы я использовал логин "sa", который, похоже, является учетной записью sysadmin. Я подключен к своему экземпляру SQL Server, используя этот логин.
Я проверил свойства файла, что он не только для чтения. Каталог не только для чтения. Все ACL разрешены.
Я не могу прикрепить базу данных. Когда я пытаюсь присоединить его, он выдает сообщение об ошибке «прикрепить базу данных не удалось».
Закрытие SSMS и повторное открытие его в качестве администратора не имеет значения.
select SERVERPROPERTY('ProductVersion')
возвращает 9.00.4035.00. Есть еще один файл, который поставляется с базой данных «dbdata.ini», который говорит «IsSql2000 = 1», так что, предположительно, он предназначен для загрузки в SQL Server 2000. Я посмотрю, смогу ли я заставить его работать в 2000 году.
LOG ON
с соответствиемldf
не решило проблему для меня