- Remove From My Forums
-
Question
-
User1815454672 posted
need some help… it runs fine on localhost but when i upload yesterday on the host server i get this:
An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: SQL Network
Interfaces, error: 26 — Error Locating Server/Instance Specified)Description:
An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.Exception Details: System.Data.SqlClient.SqlException: An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does
not allow remote connections. (provider: SQL Network Interfaces, error: 26 — Error Locating Server/Instance Specified)Source Error:
Line 5: Sub Application_Start(ByVal sender As [Object], ByVal e As EventArgs)
Line 6: AddHandler SiteMap.SiteMapResolve, AddressOf Me.AppendQueryString
Line 7: If (Roles.RoleExists("Administrators") = False) Then
Line 8: Roles.CreateRole("Administrators")
Line 9: End Ifdo i need to change anything to
global.asax file?thanks
Answers
-
User-1160112130 posted
Using connection As New SqlConnection(ConfigurationManager.ConnectionStrings(«Personal»).ConnectionString)
That is not your connection string. Your connection string is in your web.config file and I’m pretty sure that is where the problem lies. Can you let me see your Web.config file? Or at least the connection strings inside that file…There may be two or more
connection strings.Trevor Keast.
-
Marked as answer by
Thursday, October 7, 2021 12:00 AM
-
Marked as answer by
-
User1815454672 posted
<connectionStrings>
<add name=»Personal» connectionString=»Data Source=.SQLExpress;Integrated Security=True;User Instance=True;AttachDBFilename=|DataDirectory|Personal.mdf» providerName=»System.Data.SqlClient»/>
<remove name=»LocalSqlServer»/>
<add name=»LocalSqlServer» connectionString=»Data Source=.SQLExpress;Integrated Security=True;User Instance=True;AttachDBFilename=|DataDirectory|aspnetdb.mdf»/>
</connectionStrings>-
Marked as answer by
Anonymous
Thursday, October 7, 2021 12:00 AM
-
Marked as answer by
-
User-1160112130 posted
It’s not working because your connection strings are incorrect. They are not setup to work on the godaddy server. I’m not sure what all the settings are for godaddy as I don’t use them myself however I can have a good guess here:
connectionStrings>
<
add
name=«Personal«
connectionString=« Server=p3swhsql-v07.shr.phx3.secureserver.net;
Database=Personal; User ID=yourusername; Password=yourpassword; Trusted_Connection=False«
providerName=«System.Data.SqlClient«/><
remove
name=«LocalSqlServer«/><
add
name=«LocalSqlServer«
connectionString=« Server=p3swhsql-v07.shr.phx3.secureserver.net;
Database=ASPNETDB; User ID=yourusername; Password=yourpassword; Trusted_Connection=False«
providerName=«System.Data.SqlClient«/></
connectionStrings>
You will need to modify the above to match your details. You need to put your username and password in there. You also need to make sure that the database names match what you have on the server.
I just want to check — you do have your databases on the GoDaddy server right? Both of them, ASPNETDB and Personal?
Anyway — at least we know why it’s not working now. Let me know if you make any progress.
Trevor Keast.
-
Marked as answer by
Anonymous
Thursday, October 7, 2021 12:00 AM
-
Marked as answer by
-
User1815454672 posted
Hello Trevor,<o:p></o:p>
I found your suggestion very supportive and as a solution to the issue. Thanks and keep up your effort! <o:p></o:p>
Endrit
-
Marked as answer by
Anonymous
Thursday, October 7, 2021 12:00 AM
-
Marked as answer by
-
User-1160112130 posted
I’m pleased I could help! Please mark my post as answer if it resolved your question.
Regards,
Trevor Keast
-
Marked as answer by
Anonymous
Thursday, October 7, 2021 12:00 AM
-
Marked as answer by
Есть SQL 2005 на W2K3, и на нем же поднят IIS + ASP 2.
Есть сайт написанный на ASP + C#
Смысл: При открытии странички этого сайта должен делаться запрос к SQL базе, вытаскивать некоторые данные из нее и формировать новую с вставкой этих данных и соответственно показывать пользователю.
Но при попытке открыть эту страничку выдает такое (лог ошибки с сервера):
Тип события: Предупреждение
Источник события: ASP.NET 2.0.50727.0
Категория события: Веб-событие
Код события: 1309
Дата: 26.09.2007
Время: 17:11:56
Пользователь: Н/Д
Компьютер: ISA-SERVER
Описание:
Код события: 3005
Сообщение о событии: Возникло необработанное исключение.
Время события: 26.09.2007 17:11:56
Время события (UTC): 26.09.2007 13:11:56
Идентификатор события: 1bb320dc3d034a2693a854828a6d316d
Последовательность событий: 4
Появление события: 1
Код подробностей события: 0
Сведения о приложении:
Домен приложения: /LM/W3SVC/1/Root/proxylog-2-128352858986937170
Уровень доверия: Full
Виртуальный путь к приложению: /proxylog
Путь к приложению: C:Inetpubwwwrootproxylog
Имя компьютера: ISA-SERVER
Сведения о процессе:
Идентификатор процесса: 5288
Имя процесса: w3wp.exe
Имя учетной записи: NT AUTHORITYNETWORK SERVICE
Сведения об исключении:
Тип исключения: SqlException
Сообщение об исключении: Ошибка при подключении к серверу. При подключении к SQL Server 2005 эта ошибка может быть вызвана тем, что стандартные параметры SQL Server не разрешают удаленные подключения. (provider: Сетевые интерфейсы SQL, error: 26 — Ошибка при обнаружении указанного сервера или экземпляра)
Сведения о запросе:
URL запроса: http://isa-server/proxylog/statistic.aspx
Путь запроса: /proxylog/statistic.aspx
Адрес узла пользователя: 10.12.1.4
Пользователь:
Проверка подлинности: False
Тип проверки подлинности:
Имя учетной записи потока: NT AUTHORITYNETWORK SERVICE
Сведения о потоке:
Идентификатор потока: 1
Имя учетной записи потока: NT AUTHORITYNETWORK SERVICE
Выполняется олицетворение: False
Трассировка стека: в System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
в System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
в System.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo, SqlInternalConnectionTds connHandler, Boolean ignoreSniOpenTimeout, Int64 timerExpire, Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity, SqlConnection owningObject)
в System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, Int64 timerExpire, SqlConnection owningObject)
в System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, Int64 timerStart)
в System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance)
в System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance)
в System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection)
в System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options)
в System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)
в System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)
в System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
в System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
в System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
в System.Data.SqlClient.SqlConnection.Open()
в System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
в System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
в System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
в ProxyLog.Statistic.OnInit(EventArgs e) в c:inetpubwwwrootproxylogstatistic.aspx.cs:строка 44
в System.Web.UI.Control.InitRecursive(Control namingContainer)
в System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
Подробности пользовательского события:
Дополнительные сведения можно найти в центре справки и поддержки, в http://go.microsoft.com/fwlink/events.asp.
Причем удаленные подключения к SQL разрешены. Пробую делать что бы просто без выборки отображалась таблица при запросе, все нормально отображается….
Т.е. получается что если без выборки то можно подключиться к серверу, а с выборкой нет…. ???
Есть подозрение что с правами на базу что то не так.
Я только учусь — подскажите какие нужны права и для какого сервиса….?
- Remove From My Forums
-
Question
-
Здравствуйте!
Не могу подключиться к серверам SQL 2005 из VS 2012 через поставщика данных
Net framework for Sql Server. Выдается сообщение об ошибке:
Подключение к серверу успешно установлено, но затем произошла ошибка в процессе подтверждения, предшествующего входу. (provider: SSL Provider, error: 0 — Время ожидания операции истекло.) (Microsoft SQL Server, ошибка: 258)
Подключение к серверам SQL 2000 и 2008 проблем не вызывает. Подключение к SQL 2005 через поставщика данных OLE DB тоже работает.
Ошибка была на VS 2012 RC. Поставил RTM. Ничего не изменилось.
Кто-нибудь сталкивался с этим? Заранее спасибо.
Answers
-
Скорее всего баг в самом поставщике услуг. Если можете создайте баг репорт на сайте
Microsoft Connect, там как раз принимаются по 2012 студии.
Для связи [mail]
-
Marked as answer by
Monday, September 3, 2012 11:50 AM
-
Marked as answer by
-
Починили. Четыре дня назад пришло обновление от Microsoft. После установки, все заработало.
-
Marked as answer by
afvadik
Saturday, November 3, 2012 9:54 AM
-
Marked as answer by
Подключение к удаленному компьютеру.
1.Включение протоколов:
1.1. Меню Пуск -> Все программы -> Microsoft SQL Server 2005 -> Средства настройки -> Sql Server Configuration Manager
1.2. В пункте сетевая конфигурация SQL Server 2005 выбрать протоколы для нужного сервера, как показано на рисунке:
1.3. Правым щелчком мыши вызвать контекстное меню протокола TCP/IP.
Включить.
1.4. Перезапустить службу. Для этого выбрать пункт в левом окошке Службы SQL Server 2005.
Правым щелчком мышки перезапустить службу.
2.Настройка фиксированного порта:
2.1. Выбрать протоколы для вашего сервера.(см. пункт 1.2)
2.2. Дважды кликнуть на протоколе TCP/IP. Выбрать вкладку IP-адреса.
2.3. Найти пункт IP-All. Написать порт. Например, 49172.
2.4. Перезапустите службу. (см. пункт 1.4)
2.5. Отключите фаерволл (брандмауер) или задайте этот порт исключением, чтобы SQL мог его прослушивать.
3. Подключение к базе данных с удаленного компьютера:
3.1. Откройте SQL Manager Studio
3.2. Укажите параметры, Тип сервера: Компонент Database Enginer, проверка подлинности: Windows
В поле Имя сервера нужно написать: tcp:<имя компьютера>,49172
У меня, например, tcp:ANNASQLEXPRESS,49172.
Соединить.
4. Подключение базы данных к проекту Visual Studio:
4.1. Пункт Вид -> Обозреватель серверов.
4.2. Подключитесь к нужному серверу.
4.3. Подключитесь к базе данных. Выберете SQL Server.
В выпадающем списке выберите ваш сервер. Используйте проверку подлинности Windows. Найдите свою базу данных на компьютере.
4.4. Поздравляю, если вы все проделали правильно, то база данных подключится.
Источник: http://msdn.microsoft.com/en-u… 45343.aspx
Приветствую всех посетителей сайта Info-Comp.ru! Сегодня мы рассмотрим ситуацию, когда Вы пытаетесь подключиться к Microsoft SQL Server по сети, но Вам это не удаётся, так как возникает та или иная ошибка подключения.
В этом материале представлен последовательный план действий, который поможет Вам выявить и устранить причину возникновения таких ошибок подключения, и тем самым успешно подключиться к Microsoft SQL Server.
Итак, давайте начнем. Допустим, у нас есть Microsoft SQL Server, установленный на Windows, и мы будем пытаться подключится к нему по сети, например, из операционной системы Linux, используя Azure Data Studio.
Заметка! Как подключиться к Microsoft SQL Server из Linux.
В процессе подключения у нас возникает ошибка, и, чтобы ее устранить, мы будем последовательно выполнять определенные проверочные действия, которые помогут нам выявить причину этой ошибки.
Содержание
- Корректность ввода данных для подключения
- Доступность сервера по сети
- Открытые порты в брандмауэре
- Запущена ли служба «Обозреватель SQL Server»
- Запущена ли служба «SQL Server»
- Включен ли протокол «TCP/IP»
- Удаленные соединения с серверов
- Права имени входа, сопоставление с пользователем базы данных
- Подведение итогов
Корректность ввода данных для подключения
Первое, с чего необходимо начать, это, конечно же, с проверки данных для подключения, т.е. правильно ли мы указываем адрес сервера и имя экземпляра (если используется именованный экземпляр).
Дело в том, что если мы неправильно укажем адрес сервера, или не укажем имя экземпляра SQL Server, или ошибемся хотя бы в одной букве, подключиться мы не сможем.
Имя экземпляра SQL Server необходимо указывать в тех случаях, когда у нас настроен именованный экземпляр, например, в редакции Express по умолчанию настраивается именованный экземпляр и динамические порты.
Если не указать имя экземпляра, когда это имя необходимо указывать, мы получим ошибку
«provider: TCP Provider, error: 40 – could not open a connection to SQL Server»
А если допустить ошибку в имени экземпляра, то
«provider: TCP Provider, error: 25 – connection string is not valid»
Поэтому лучше сразу проверить корректность ввода данных для подключения.
Заметка! Обзор инструментов для работы с Microsoft SQL Server.
Доступность сервера по сети
Если данные для подключения верны, то следующим шагом будет, конечно же, проверка доступности сервера, так как если сервер физически недоступен, то все следующие проверки будут абсолютно бесполезны и ни к чему не приведут.
Если сервер недоступен, то Вы будете получать уже знакомую ошибку
«provider: TCP Provider, error: 25 – connection string is not valid»
Проверить доступность сервера можно стандартным способом, используя утилиту ping в командной строке.
Если сервер недоступен, то Вам необходимо настроить сеть, чтобы физический сервер, на котором располагается SQL Server, был доступен с компьютера, с которого Вы хотите подключиться.
Открытые порты в брандмауэре
Если сервер, на котором располагается SQL Server, физически доступен, то сразу же необходимо на нем проверить доступность портов в брандмауэре Windows, или в файрволе, который Вы используете.
Стандартный порт, на котором работает SQL Server, это 1433, соответственно, необходимо настроить правило для входящих подключений по порту 1433.
В случае если Вы используете именованный экземпляр SQL Server и динамические порты, то у Вас должно быть настроено правило для программы, в частности для исполняемого файла SQL Server – sqlservr.exe.
Для 2019 версии он расположен по следующему пути
«C:Program FilesMicrosoft SQL ServerMSSQL15.MSSQLSERVERMSSQLBinnSqlservr.exe»
Кроме этого, в данном случае необходимо еще открыть UDP порт 1434 для службы «Обозреватель SQL Server».
Подробная официальная инструкция «Настройка брандмауэра Windows для доступа к SQL Server».
Продолжая тему именованных экземпляров и динамических портов, стоит отметить, что если используется именованный экземпляр и динамические порты, то дополнительно должна быть запущена служба «Обозреватель SQL Server». Если она не запущена, то подключиться Вы не сможете, будет возникать все та же ошибка
«provider: TCP Provider, error: 25 – connection string is not valid»
Поэтому запустите SQL Server Configuration Manager и проверьте соответствующую службу.
Запущена ли служба «SQL Server»
Если сервер физически доступен, необходимые порты открыты, то следующим шагом следует проверить, а запущена ли в принципе служба SQL Server.
Ведь бывает и такое, что мы пытаемся подключиться к SQL Server, а его просто нет, т.е. он даже не запущен.
Поэтому проверяем, запущена ли служба «SQL Server» в SQL Server Configuration Manager.
Заметка! Сравнение Azure Data Studio с SQL Server Management Studio (SSMS).
Включен ли протокол «TCP/IP»
Кроме всего вышеперечисленного необходимо проверить, включен ли протокол «TCP/IP» в сетевой конфигурации SQL Server, так как если SQL Server используется в сети, данный протокол обязательно должен быть включен.
Это можно проверить в SQL Server Configuration Manager в разделе «Сетевая конфигурация SQL Server».
Удаленные соединения с серверов
Также необходимо проверить, разрешены ли удаленные соединения с серверов. Это можно сделать в SQL Server Management Studio в свойствах сервера на вкладке «Соединения», параметр «Разрешить удаленные соединения с сервером» должен быть включен.
Заметка! Как включить нумерацию строк кода в SQL Server Management Studio.
Права имени входа, сопоставление с пользователем базы данных
Имя входа, которое Вы указываете при подключении к SQL Server, должно обладать определенными правами, в частности оно должно быть сопоставлено с пользователем базы данных, если это не так, то Вы будете получать ошибку подключения, например
«При входе пользователя TestLogin произошла ошибка».
Поэтому необходимо проверить, сопоставлено ли имя входа с пользователем базы данных и предоставлены ли необходимые права.
Это можно сделать в SQL Server Management Studio, перейдите в контейнер «Безопасность -> Имена для входа», выберите нужное имя входа и зайдите в свойства этого имени. Затем на вкладке «Сопоставление пользователей» отметьте базы данных, с которыми будет сопоставлено данное имя входа, и задайте необходимые права в виде указания ролей базы данных.
Подведение итогов
Таким образом, на основе всего вышеизложенного мы можем составить план действий, следуя которому мы обязательно определим и устраним причину возникновения ошибки подключения к Microsoft SQL Server по сети.
Что необходимо сделать для устранения ошибки подключения к Microsoft SQL Server по сети:
Проверить корректность ввода данных для подключения
Проверить доступность физического сервера по сети
Открыть порты в брандмауэре (файрволе)
Проверить, запущена ли служба «Обозреватель SQL Server»
Проверить, запущена ли служба «SQL Server»
Проверить, включен ли протокол «TCP/IP»
Проверить, разрешены ли удаленные соединения с серверов
Проверить права имени входа и сопоставить с пользователем базы данных
Заметка! Курсы по Transact-SQL для начинающих.
На сегодня это все, надеюсь, материал был Вам полезен, пока!