Может ли SQL Server Express LocalDB быть подключен удаленно? - PullRequest
26 голосов
/ 08 февраля 2012

Я изучаю возможность использования новой SQL Server Express LocalDB (я думаю, это кодовое имя "Denali") для настольных приложений.

В настоящее время он работает с SQL Compact, но пользователь хочет поделиться базой данных между несколькими компьютерами в сети. К сожалению, это не то, что SQL Compact может сделать, поэтому я изучаю другие решения.

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

Итак, мои вопросы: поддерживает ли новая SQL Express LocalDB удаленные подключения к базе данных по сети и / или через общую сетевую папку с файлом mdf в нем?

LocalDB поддерживает указание пути для присоединенной локальной БД в строке подключения (AttachDbFileName), следовательно, опция общей сетевой папки.

ПРИМЕЧАНИЕ: Этот вопрос относится к «LocalDB» новой версии SQL Express «Denali», а не к SQL Server Express 2008 или более ранней версии. Смотрите статью здесь, объявляющую о выпуске LocalDB: http://blogs.msdn.com/b/sqlexpress/archive/2011/07/12/introducing-localdb-a-better-sql-express.aspx

Ответы [ 3 ]

26 голосов
/ 09 февраля 2012

Нет, SQL Server Express LocalDB не принимает удаленные подключения.

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

Дополнительное предупреждение о безопасности: в отличие от баз данных SQL Server Compact, базы данных SQL Server Express (в том числе LocalDB) не предназначены для безопасного обмена данными.Например, они могут содержать вредоносный код во встроенных в них сборках .NET.Поэтому вам никогда не следует открывать базы данных из ненадежных источников.

Может быть, было бы лучше предоставить заказчику простой инструмент, который автоматизирует процесс резервного копирования?

2 голосов
/ 08 февраля 2012

Короче да, может.Вот учебник о том, как его настроить.

Кроме того, здесь еще один пост с потенциальной проблемой, которая может возникнуть.

Оба объясняюткак настроить SQL Server Express для приема удаленных подключений.

1 голос
/ 11 августа 2017

Это не новая тема, но я хотел бы поделиться своим опытом с базой данных SQL Server Express LocalDB.

У меня есть проект WPF C #, использующий базу данных SQL с LocalDb Engine. Работает нормально, нет проблем, я могу получить доступ к базе данных. Я хотел, чтобы эта программа работала в сети с большим количеством компьютеров. В моем сценарии в сети другой компьютер может использовать базу данных с моего компьютера (используя UNC-путь в строке подключения).
Мне показалось, что удаленное соединение работает. Но когда удаленный компьютер подключен, я не смог подключиться к своей базе данных. Если я подключился первым, удаленный компьютер не смог подключиться. Это говорит о том, что удаленное соединение работает, но множественное соединение не разрешено.
Хорошо, я не сдался, и я дважды запускал программу со своего ПК и увидел, что она работает, что говорит мне о том, что один и тот же механизм SQL LocalDB может подключаться несколько раз.

Надеюсь, этот опыт кому-нибудь поможет. Спасибо.

...