Usuário com melhor resposta
Problema com Asp.net e SQLExpress2008

Pergunta
-
Bom dia turma, belê!
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)
O erro acima ocorre apenas ao executar no servidor onde está publicado a aplicação win server 2008, mas nessa máquina eu consigo acessar o banco de dados normalmente pelo managament studio.
Nas aplicação estou acessando via Authentication=Forms na maquina de desenvolvimento tudo funciona perfeitamente estou utilizando o VS 2010.
Desde já agradeço
Adriano_SP
Respostas
-
Adriano veja
http://www.connectionstrings.com/
Não esqueça de usar o componente </> na barra para posta seu código. Microsoft MCPD,MCTS,MCC
- Marcado como Resposta Seilor Bonancio JuniorModerator segunda-feira, 21 de janeiro de 2013 17:48
Todas as Respostas
-
Olá Adriano, pode ser problema na sua connectionString. poderia verificar a mesma?
- Editado welington jrModerator segunda-feira, 17 de dezembro de 2012 12:41
-
Welington, Belê !
Minha conexão string para esse servidor está asim :
<connectionStrings>
<connectionStrings>
<add name="ApplicationServices" connectionString="data source=xxx\SQLEXPRESS2008;user id=sa;password=xxx;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient"/>
<add name="BancoEntities" connectionString="metadata=res://*/Banco.csdl|res://*/Banco.ssdl|res://*/Banco.msl;provider=System.Data.SqlClient;provider connection string="data source=SERVIDOR\SQLEXPRESS2008;initial catalog=banco;user id=sa;password=xxx;multipleactiveresultsets=True;App=EntityFramework"" providerName="System.Data.EntityClient"/>
<add name="Banco" connectionString="Data Source=xxx\SQLEXPRESS2008; Initial Catalog=banco;user id=sa;password=xxx" providerName="System.Data.SqlClient"/>
<add name="ConexaoPadrao" connectionString="Data Source=xxx\SQLEXPRESS2008; Initial Catalog=Banco; user id=sa;password=xxx" providerName="System.Data.SqlClient"/>
</connectionStrings>Localmente funciona direitinho apenas na publicação no servidor que não funciona corretamente devido erro na conexão.
Abs
Adriano_SP
-
-
-
Olha se funciona agora.
<connectionStrings> <add name="BancoEntities" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=banco;user id=sa;password=xxx;" providerName="System.Data.EntityClient"/> <add name="Banco" connectionString="Data Source=.\SQLEXPRESS; Initial Catalog=banco;user id=sa;password=xxx" providerName="System.Data.SqlClient"/> <add name="ConexaoPadrao" connectionString="Data Source=.\SQLEXPRESS; Initial Catalog=Banco; user id=sa;password=xxx" providerName="System.Data.SqlClient"/> </connectionStrings>
mais connectionString
- Editado welington jrModerator segunda-feira, 17 de dezembro de 2012 13:40
-
Welington....
Fiz a alteração que vc citou acima e também não funcionou...
Depois de varias alterações e tentativas agora estou com a seguinte mensagem:
Cannot open database "myBanco" requested by the login. The login failed.
Login failed for user 'NT AUTHORITY\NETWORK SERVICE'.
Deixei dessa forma a conexão string
<add name="Banco" connectionString="Data Source=SERVIDORqualquer\SQLExpress2008; Initial Catalog=myBanco; Trusted_Connection=True;" providerName="System.Data.SqlClient"/>
Agradeço pela ajuda.. pois to começando a ficar preocupado e pensando em refazer o sistema com outro banco de dados.... :-(
Adriano_SP
-
Aparentemente você está utilizando autenticação SQL SERVER. O erro acima é de Login em momento algum você passou ele na connectionString. Considerando que você tem um usuário com permissão para acessar a base de dados. Viu as connectionstring que te passei?
-
Opa...
Vi sim não funciona nem a pau.... O mais estranho é que na minha máquina local eu tb tenho um sql express 2008 e funciona direitinho...
copiei a string de conexão da maquian local e deixei no servidor e apenas alterei de: Adriano-pc\SqlExpress2008 para Servidor\SqlExpress2008E não rola nem a pau.....
Tú tens mais alguma idéia Welington... e desde já agradeço...
Adriano_SP
-
Olha este artigo
http://aspboss.blogspot.com.br/2012/07/login-failed-for-user-nt.html
dever ter alguma coisa diferente na sua maquina e no servidor.
O servidor WEB e banco é a mesma maquina né.
- Editado welington jrModerator terça-feira, 18 de dezembro de 2012 00:18
-
OPa...
Sim é a mesma máquina... estarei lendo o blog
Apenas para teste criei uma outra aplicação com uma página web e coloquei o seguinte código de acesso como vi em alguns sites sugerindo isso :
string connn = @"Provider=SQLNCLI10;Server=Servidor\SQLExpress2008;Database=myBanco; Trusted_Connection=yes;"; SqlConnection con = new SqlConnection(connn); try { con.Open(); SqlCommand cmd = new SqlCommand("Select * from table", con); SqlDataReader dr = cmd.ExecuteReader(); GridView1.DataSource = dr; GridView1.DataBind(); } catch (Exception ex) { Response.Write(ex.Message.ToString()); throw;
No entanto agora estou retornando o seguinte erro:
Server Error in '/' Application.
--------------------------------------------------------------------------------
Keyword not supported: 'provider'.Adriano_SP
-
Meu... punk hein...
Você já conectou esse banco no vs? Tipo vai lá no server explorer, cria a conexão com a base... depois olha as propriedades da conexão, na propriedade (dã... rsrs) connection string e vê se está igual... pode ter algum pequeno problema na connstring.
Vale tentar tudo pra por o sistema em prod ehehehe...
Ps.: Não desista do SQL rsrs...
-
Blz Rubens...
Então, o que ocorre é isso na minha máquina de desenvolvimento funciona perfeitamente mas quando gero a publicação e gero no servidor e altero a string de conexão que está no webconfig não funciona, entretanto eu consigo abrir o SQLExpress2008 seja usando a autenticação do windows ou usando o usuário sa do sql.
Realmente estou sem idéia do que fazer procurei bastante na internet e até o momento tudo que encontrei já fiz e até o momento ainda nada....
Caso alguém tiver mais alguma sugestão eu agradeço pela ajuda.
Abs
Adriano_SP
-
Olá turma....
Ainda tô enrolado com esse assunto.... Eu queria saber o seguinte, a connection string abaixo funciona 100% no SQLExpress2005 (aqui no trabalho) :
<add name="Banco" connectionString="server=.\SQL;database=Northwind;user=sa;Password=z" providerName="System.Data.SqlClient"/>
Essa mesma connection teria que funcionar também no SQLExpress2008 ou existe uma especifica para conectar no SQLExpress2008 usando em um Windows 2008 Server.
Agradeço pelo esclarecimentos .....
Um Abraço,
Adriano_SP
-
-
Olá Welington,
A connectionstring informada por você não está examente igual a minha? Exceto pelo fato do nome da instância?
Só consigo testar e verificar se funcionu perfeitamente quando chegar em casa, depois te avise, ok.
Mas ainda não achei a diferença a string informada por vc e a minha que está logo abaixo:
<add name="Banco" connectionString="server=.\SQL;database=Northwind;user=sa;Password=z" providerName="System.Data.SqlClient"/>
Abs
Adriano_SP
-
Adriano vc está colocando parametros errados na sua connection por isso vc está tendo esses erros.
use http://www.connectionstrings.com/
Não esqueça de usar o componente </> na barra para posta seu código. Microsoft MCPD,MCTS,MCC
-
Seilor, boa tarde.
Chegando em casa irei acessar e verificar tudo isso novamente, pois já tentei de várias formas e o mais curioso é que na minha máquina funciona 100% apenas eu estou alterando o nome da instância e servidor e atualizando no win 2008 server e não está funcionando ah tb já havia acessado esse site que por sinal é ótimo mas mesmo assim não está funcionando, de qualquer forma irei tentar novamente, irei rever todos os pontos novamente e nos falamos depois.
Abs, Adriano_SP
-
Seilor...
Realmente tá fod....... essa parada... já olhei centenas de artigos e pequenas dicas que o pessoal postou mas num funciona nem a pau, sempre aparece a mensagem:
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)
Realmente não sei o que pode ser... e olha que já tentei em outras máquina e funciona perfeitamente....
Caso alguém ai souber de algo a mais que eu possa fazer, me ajude!!
Obrigado,
Abs, Adriano_SP
-
Pessoal.... Bom dia.
Alguém consegue entender pq dessa mensagem ? Ainda não consegui resolver.
O problema ocorre apenas ao publicar no servidor com Sql Express2008 e win server 2008
Deixei no web config dessa forma:
<connectionStrings><add name="Banco" connectionString="Data Source=.\SQLExpress2008; Initial Catalog=MeuDataBase;user id=sa;password=sa" providerName="System.Data.SqlClient"/>
</connectionStrings>E no codigo deixei assim:
string bancox = "";
con.Open();
bancox = ConfigurationManager.ConnectionStrings["Banco"].ConnectionString;
SqlDataReader dr = null;
SqlConnection con = new SqlConnection(bancox);
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.Text;
cmd.Connection = con;
cmd.CommandText = "SELECT campo1, campo2 Tb_LOGIN WHERE campo1 = @user and campo2 =@senha";
cmd.Parameters.AddWithValue("@user", login);
cmd.Parameters.AddWithValue("@senha", System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(senha.ToUpper().Trim(), "SHA1"));
dr = cmd.ExecuteReader();Como está sendo apresenado o seguinte erro:
Server Error in '/SIPES' Application.
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)
O que eu fiz para tentar simular foi criar uma aplicação windows form. E no appconfig eu deixei a seguinte string de conexão:
<connectionStrings>
<add name="Banco" connectionString="Data Source=.\SQLExpress2008; Initial Catalog=MeuDataBase;user id=sa;password=sa"/>
</connectionStrings>e no codigo eu faço assim:
string str = ConfigurationManager.ConnectionStrings["Banco"].ConnectionString;
SqlConnection cn = new SqlConnection(str);
SqlDataAdapter adp = new SqlDataAdapter();
adp.SelectCommand = new SqlCommand("Select * from tabelaqualquer", cn);
cn.Open();
DataSet ds = new DataSet();
adp.Fill(ds);
dataGridView1.DataSource = ds.Tables[0];RESUMINDO:
REalmente não consigo entender qual o problema, tem algo errado?
Pls me ajude!!
Abs
Abs, Adriano_SP
-
-
Adriano veja
http://www.connectionstrings.com/
Não esqueça de usar o componente </> na barra para posta seu código. Microsoft MCPD,MCTS,MCC
- Marcado como Resposta Seilor Bonancio JuniorModerator segunda-feira, 21 de janeiro de 2013 17:48