Я создал приложение C #, которое использует базу данных SQL Server. У меня есть другие компьютеры, связанные со мной и друг с другом в рабочей группе. Я поделился своим приложением C # с другими. Когда они открывают приложение, они получают ошибку
При установлении соединения с SQL Server произошла ошибка, связанная с сетью или экземпляром. Сервер не найден или не был доступен
Но приложение отлично работает на моем ПК. Строка подключения, которую я использую,
Data Source=ASHISHPC1\SQLEXPRESS;Initial Catalog=ACW;User ID=ash159;Password=ashish159
который хранится в .config
файле.
Приложение отлично работает на моем ПК. Что я должен сделать? Я включил TCP / IP на сервере, но та же ошибка сохраняется. Некоторые изменения в строке подключения или что-то еще?
sql-server
connectivity
Сообщество
источник
источник
Ответы:
Существует два уровня безопасности, которые необходимо изменить, чтобы разрешить удаленный доступ.
Конфигурация SQL Server . По умолчанию в выпусках Express, Developer и Enteprise Evaluation подключение по протоколу TCP / IP отключено . Включите это с помощью диспетчера конфигурации SQL Server.
Брандмауэр Windows . Хотя полное отключение брандмауэра будет работать для этого компонента, это не является рекомендацией по безопасности (и при этом не требуется). (Примечание: в этом разделе я предполагаю конфигурацию по умолчанию . Существует множество параметров, которые можно изменить, что немного влияет на эти шаги.)
Существует два случая в зависимости от типа экземпляра SQL Server, к которому вы подключаетесь:
Экземпляр по умолчанию (подключение только по имени компьютера). Добавьте разрешающее входящее правило либо на TCP-порт 1433, либо на службу ядра базы данных.
Именованный экземпляр (подключение по имени компьютера + имя экземпляра). Добавьте разрешающее входящее правило на UDP-порт 1434 для доступа к службе браузера SQL. Добавьте разрешающее входящее правило в службу ядра СУБД.
Эта процедура полностью задокументирована здесь , или вы можете посмотреть, как я объясню, а затем пройтись по конфигурации для именованного экземпляра здесь .
источник
Вы должны установить правильные параметры сети в вашем SQL-сервере: активный TCP / IP в SQL-сервере. Также убедитесь, что служба браузера сервера работает, потому что если она остановлена, вы не сможете получить доступ к SQL-серверу. Сервер.
источник
Убедитесь, что служба sqlbrowser включена, как упомянуто bendeg, и что на вашем компьютере открыт UDP 1434, чтобы клиенты могли использовать sqlbrowser для разрешения имени. Также откройте порт TCP / IP для указанного экземпляра.
Чтобы найти порт вашего экземпляра, подключитесь с помощью префикса tcp: в Management Studio следующим образом: tcp: ASHISHPC1 \ SQLEXPRESS, и результатом запроса ниже должен быть порт, который вы должны предоставить клиентам в вашей рабочей группе.
источник
Я выключил брандмауэр Windows для домашней сети, и он работал нормально .. Спасибо всем .. :)
источник
Ваш сервер SQL должен разрешать соединения TCP / IP, а брандмауэр Windows должен быть отключен для домашней сети. http://learnadvancecsharp.blogspot.in/2013/09/how-to-access-sql-server-database-from.html
источник