Назад | Перейти на главную страницу

Как настроить IIS 10 для чтения из файла локальной базы данных SQL?

Я пытался развернуть исходное веб-приложение ASP .NET с использованием шаблона MVC с аутентификацией через локальный файл базы данных SQL. Пока я могу заставить его работать на моем компьютере. Когда я публикую его в папке на удаленном сервере, я не могу понять, как настроить IIS 10 для чтения из этого локального файла базы данных SQL, сохраненного в его подкаталоге App_Data. В результате я получаю следующую ошибку:

Ошибка сетевых интерфейсов SQL 52 - Невозможно найти установку среды выполнения локальной базы данных. Убедитесь, что SQL Server Express установлен правильно и что функция локальной базы данных включена.

Я пытаюсь решить проблему, установив SQL Server 2012 Express на удаленный сервер, но проблема все еще существует. Итак, я полагаю, что проблема может исходить из строки подключения:

Источник данных = (LocalDb) \ MSSQLLocalDB; AttachDbFilename = | DataDirectory | \ aspnet-WebApplication1-20180923034052.mdf; исходный каталог = aspnet-WebApplication1-20180923034052; интегрированная безопасность = True "providerName =" System.Data.SqlClient

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

Источник данных =. \ MSSQLSERVER; AttachDbFilename = | DataDirectory | \ aspnet-WebApplication1-20180923034052.mdf; Исходный каталог = aspnet-WebApplication1-20180923034052; Интегрированная безопасность = True "providerName =" System.Data.SqlClient

Какая конфигурация мне не хватает, чтобы заставить работать это простое веб-приложение ASP .NET?

Что я сделал, так это добавил appool в качестве пользователя в SQL Server. А именно, на уровне SQL Server перейдите к безопасности. Добавить новый логин. Добавьте IIS APPPOOL \ APPPOOLNAME в качестве пользователя. Не проверяйте пользователя или что-нибудь еще. Примите значения по умолчанию и добавьте пользователя appool в SQL Server. Дайте этому пользователю права чтения / записи в базе данных и все. Ссылка в блоге MSDN

Чтобы строка подключения по умолчанию, созданная вместе с проектом, работала, вам необходимо установить SQL Server LocalDB на удаленном сервере. Это отдельная установка от основной. Здесь ссылка на сайт куда вы можете скачать Microsoft SQL Server 2012 LocalDB.

После этого настройте каталог, в котором публикуется проект, чтобы использовать Локальная система в качестве пула приложений через Диспетчер IIS. Для этого как указано Вот:

  1. Нажмите на Пулы приложений в Диспетчер IIS.
  2. Нажмите на Добавить пул приложений ... для создания нового пула приложений. Используйте любые настройки и названия, которые захотите.
  3. Выбрав новый пул приложений, нажмите Расширенные настройки... и изменить Идентичность к Локальная система нажав на .... Он находится в раскрывающемся меню под Встроенная учетная запись.
  4. Нажмите хорошо чтобы сохранить и закрыть все всплывающие окна и вернуться в Диспетчер IIS.
  5. Выберите каталог, в котором публикуется проект, и нажмите Расширенные настройки....
  6. + Изменить Пул приложений во вновь созданный пул приложений и щелкните хорошо заканчивать.

Учтите, что хранить пул приложений работает как Локальная система как объяснено Вот, но этого достаточно для тестирования.