programing

SQL Server에 대한 연결을 설정하는 동안 네트워크 관련 또는 인스턴스 관련 오류가 발생했습니다.

lastmoon 2023. 7. 31. 21:47
반응형

SQL Server에 대한 연결을 설정하는 동안 네트워크 관련 또는 인스턴스 관련 오류가 발생했습니다.

somee.com 웹 애플리케이션을 asp.net 에 배포했는데, 이 사이트(ipc.somee.com )에 로그인할 때마다 다음과 같은 네트워크 관련 오류가 발생합니다.

A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to 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: A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)

Source Error: 

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace: 


[SqlException (0x80131904): A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)]
   System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) +5296071
   System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) +558
   System.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo, SqlInternalConnectionTds connHandler, Boolean ignoreSniOpenTimeout, Int64 timerExpire, Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity, Boolean withFailover) +5308555
   System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean ignoreSniOpenTimeout, TimeoutTimer timeout, Boolean withFailover) +145
   System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString connectionOptions, SqlCredential credential, TimeoutTimer timeout) +920
   System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(TimeoutTimer timeout, SqlConnectionString connectionOptions, SqlCredential credential, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance) +307
   System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions) +434
   System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions) +5311099
   System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool pool, DbConnectionOptions options, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions) +37
   System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnectionOptions userOptions) +558
   System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnectionOptions userOptions) +67
   System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection) +1052
   System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection) +78
   System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection) +167
   System.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) +143
   System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry) +83
   System.Data.SqlClient.SqlConnection.Open() +96
   Default.log(Object sender, EventArgs e) in c:\users\sreekanth\documents\visual studio 2010\Projects\IPCWebApp\IPCWebApp\Default.aspx.cs:43
   System.Web.UI.WebControls.ImageButton.OnClick(ImageClickEventArgs e) +115
   System.Web.UI.WebControls.ImageButton.RaisePostBackEvent(String eventArgument) +124
   System.Web.UI.WebControls.ImageButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +35
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1724

응용 프로그램에 데이터베이스에 액세스할 수 있는 권한이 없는 경우 SQL Server에서 이 오류를 발생시킵니다.이 오류에는 몇 가지 이유가 있습니다.이 오류를 해결하려면 다음 지침을 따라야 합니다.

  1. 관리 스튜디오를 사용하여 서버에서 sql 서버를 연결해 보십시오. Windows 인증을 사용하여 sql 서버를 연결하는 경우 응용 프로그램 풀 ID를 서버 관리자로 설정하십시오.

  2. 만약 당신이 sql server 인증을 사용한다면, 당신의 웹 어플리케이션의 web.config에 당신의 연결 문자열을 확인하고 당신이 로그인할 수 있도록 sql server의 사용자 ID와 비밀번호를 설정합니다.

  3. 데이터베이스가 다른 서버에 있는 경우(원격 데이터베이스 액세스), 먼저 sql server management studio에서 sql server 속성의 원격 액세스를 활성화하고 sql server 구성 관리자에서 TCP/IP를 활성화합니다.

  4. 이러한 모든 작업을 수행한 후에도 여전히 데이터베이스에 액세스할 수 없는 경우 데이터베이스에 액세스하려는 서버 양식의 방화벽을 확인하고 방화벽에 하나의 규칙을 추가하여 SQL 서버 포트를 사용하도록 설정합니다(기본 SQL 서버는 1433을 사용하여 SQL 서버 구성 관리자 네트워크 프로토콜 TCP/IP 포트를 확인해야 함).

  5. SQL 서버가 명명된 인스턴스에서 실행 중인 경우 포트 번호를 117.312.21.21/name of sqlserver, 1433과 같이 sqlserver 이름으로 작성해야 합니다.

  6. Amazon aWS 또는 Microsoft azure와 같은 클라우드 호스팅을 사용하는 경우 서버 또는 인스턴스가 클라우드 방화벽 뒤에서 실행되므로 명명된 인스턴스에 대한 SQL 서버의 기본 인스턴스 또는 특정 포트가 있는 경우 클라우드 방화벽에서 1433 포트를 사용하도록 설정해야 합니다.

  7. Amazon RDS 또는 SQL zure를 사용하는 경우 해당 인스턴스의 Security Group에서 포트를 사용하도록 설정해야 합니다.

  8. SQL Server 인증 모드를 통해 SQL Server에 액세스하는 경우 "SQL Server and Windows Authentication Mode" SQL Server 인스턴스 속성을 사용하도록 설정했는지 확인합니다.

    1. 일부 변경 사항은 다시 시작해야 하므로 속성을 변경한 후 SQL Server 인스턴스를 다시 시작합니다.

만약 당신이 더 많은 어려움에 직면한다면 당신은 당신의 웹사이트와 sql 서버에 대한 더 많은 정보를 제공해야 합니다.

언급URL : https://stackoverflow.com/questions/16256533/a-network-related-or-instance-specific-error-occurred-while-establishing-a-conne

반응형