IIS: подключение к базе данных .mdf — проблема с веб-конфигурацией

Локально я подключаюсь к Northwind.mdf, но когда я загружаю приложение на удаленный сервер, я получаю следующую ошибку:

При установлении соединения с SQL Server произошла ошибка, связанная с сетью или конкретным экземпляром. Сервер не найден или не был доступен. Убедитесь, что имя экземпляра указано правильно и что SQL Server настроен на разрешение удаленных подключений. (поставщик: Сетевые интерфейсы SQL, ошибка: 26 — Ошибка при обнаружении указанного сервера/экземпляра)

Вот несколько вариантов, которые я пробовал:

<connectionStrings>
        <add name="ConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Northwind.mdf;Integrated Security=True;User Instance=True" providerName="System.Data.SqlClient"/>
    </connectionStrings>

Вышеупомянутый работает локально.

<connectionStrings>
            <add name="ConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=D:\ASP\TestSite\App_Data\Northwind.mdf; Integrated Security=True;Connect Timeout=30;User Instance=True;Trusted_Connection=Yes"/>
        </connectionStrings>

На сервере установлен SQL Server 2005

Спасибо,
Илья


person ilija veselica    schedule 21.12.2010    source источник
comment
В вашей строке подключения указана редакция Express, но вы упоминаете только SQL Server 2005 - что это такое?? SQL Server 2005 Express на удаленном хосте или полная версия SQL Server 2005?   -  person marc_s    schedule 21.12.2010


Ответы (4)


Выполните следующие действия: 1. Прикрепите файл Northwind.mdf к серверу Sql Server 2005 на своем сервере, используя студию управления сервером Sql. 2: Измените строку подключения в файле web.config, чтобы она указывала на базу данных на вашем сервере.

Как отсоединить/присоединить БД.

person gbs    schedule 21.12.2010
comment
привет, у меня тоже такая же проблема. Я добавил файл mdf из визуальной студии в папку app_data. моя строка подключения: Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Integrated Security=True;User Instance=True. я загружаю свои проекты через filezilla. так есть ли другой способ решить проблему - person Arjun Vachhani; 01.09.2013
comment
@ArjunVachhani, вам придется подключить свою базу данных к серверу базы данных хостинга. - person gbs; 03.09.2013

Пара вещей, которые нужно проверить:

  1. Действительно ли файл базы данных находится в этом месте?
  2. Есть ли у пула приложений права на чтение/запись в этот каталог?
  3. Службы SQL Express действительно работают?
person NotMe    schedule 21.12.2010

Data Source=.\\SQLEXPRESS;AttachDbFilename=D:\\ASP\TestSite\\App_Data\\Northwind.mdf;Integrated Security=True;User Instance=True

Затем прочитайте Как настроить SQL Server 2005 для разрешения удаленных подключений

И убедитесь, что расположение Northwind.mdf правильное!

person eriksv88    schedule 21.12.2010

Вот пара моментов для проверки:

  • Если вы выполняете развертывание в среде общего хостинга, есть вероятность, что хост не будет запускать SQL Server на веб-серверах. Попросите их подтвердить и предоставить вам файл .

  • Строка подключения, которую вы используете, выглядит подозрительно. Если SQL-сервер был установлен на вашем сервере, но в качестве экземпляра «по умолчанию», вам не нужна часть \SQLEXPRESS строки подключения Data Source. Просто используйте . или (local).

  • Если это действительно SQL Express, и он был установлен с именем экземпляра SQLEXPRESS, убедитесь, что удостоверение сайта имеет действительный логин и правильные разрешения для вашей базы данных. Это удостоверение может быть учетной записью рабочего процесса (NETWORK SERVICE, ApplicationPoolIdentity, настраиваемая учетная запись) или анонимной учетной записью IIS сайта (если включено олицетворение ASP.NET).

Мое последнее замечание важно:

мой совет

  • точно узнать, какая версия И редакция SQL Server доступна для использования
  • узнать, где он размещен (локально на вашем сервере или на другом компьютере)
  • узнать, настроен ли он как экземпляр «по умолчанию» или как именованный экземпляр
person Kev    schedule 22.12.2010