Параллельное использование LocalDB на сетевом диске (ах)

Моя конфигурация выглядит следующим образом:

Сервер с Z: сопоставлен с d:\something

Клиент с Z: сопоставлен с \\server\ MDF LocalDB (и всем приложением), расположенным в Z:

Любой компьютер сам по себе в порядке, но не работает одновременно. Я получаю исключение: System.Data.SqlClient.SqlException 0x80131904 Не удается открыть базу данных z:\xxx\xxx.mdf, запрошенную при входе в систему. вход не удался.


person jrev    schedule 24.08.2012    source источник


Ответы (2)


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

Решено установкой SQLEXPRESS, который поддерживает удаленные подключения.

person jrev    schedule 27.08.2012

Это можно сделать. Но это непросто (сделал это с SQL 2016 localdb).

  1. создать базу данных локально. База данных будет создана в C:\Users\ например c:\Users\eric\database.mdf
  2. Закройте SSMS (или отключитесь от проводника объектов)
  3. из командной строки: MSSQLLocalDB stop
  4. переместите database.mdf и database_log.ldf на сетевой диск (например, s:\sql\database.mdf).
  5. создавать символические ссылки из исходного местоположения в новое местоположение. Из командной строки: mklink c:\Users\eric\database.mdf s:\sql\database.mdf mklink c:\Users\eric\database_log.ldf s:\sql\database_log.ldf

  6. MSSQLLocalDB start

person Eric Labashosky    schedule 06.02.2018
comment
Я не думаю, что этот ответ касается двух компьютеров, подключенных к одному и тому же файлу mdf, расположенному на общем ресурсе сервера. Это то, что вы можете сделать с файлами Access mdb, но это невозможно с LocalDB. - person Mike Lowery; 05.02.2019