Problema al conectar MSSQL

Iniciado por Shell Root, 7 Julio 2014, 14:47 PM

0 Miembros y 1 Visitante están viendo este tema.

Shell Root

Tengo un servidor (Windows Server Standard FE) y varios ps conectados en lan, el servidor tengo MSSQL (SQL Server 2008) y estoy desarrollando una aplicacion en C# la cual necesita conexion a la base de datos.

CitarERROR: Valor de tiempo de espera caducado. El periodo de tiempo de espera se agotó al intentar consumir la confirmación del protocolo de enlace previo al inicio de sesión. El motivo podría ser que se produjo un error en el protocolo de enlace o que el servidor no pudo responder a tiempo. El tiempo invertido al intentar conectarse a este servidor fue: [Previo al inicio de sesión] inicializacion=39077; protocolo de enlace=13.

En el servidor tengo permitido la conexion al equipo, además, del motor de base de datos, que podría estar pasando?

Me conecto desde Excel y entra normalmente, pero no puedo coger el mismo string de conexión porque contiene palabras reservadas.
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

Ari Slash

Hola,
bueno, hubo un tiempo que tuve el mismo problema, y tan solo aumente el timeout a un valor grande, en el string de conexión, si es que usas "Data.SqlClient.SqlConnection":

Data Source=127.0.0.1;Initial Catalog=miBD;User ID=admin;Password=123;Connection Timeout=3000000;

Saludos

Shell Root

@Ari Slash, eso me funciono pero tarda demasiado en ejecutarse una query simple (insert), como podría corregirse? Hacerlo desde el motor de base de datos?
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

Ari Slash

Tienes instalado el "SQL Server Management Studio" ?
Intenta probando las consultas en ese cliente, para ir descartando.
Si funciona rapido en ese cliente, puede ser la clase de conexión que estes utilizando, y podrias postearla. Si funciona igual de lento, en el mismo cliente, sobre tu nueva conexión, click derecho > monitor de actividad. Y se vera el uso de memoria y/o procesador, para saber si es la cantidad de registros de la consulta la que causa la lentitud, o el trabajo en si que requiera esta.

Shell Root

Es la misma que uso siempre y sólo esta vez me ha presentado este inconveniente,

Código (csharp) [Seleccionar]
this.Cnn = new SqlConnection("Data Source=xxx; Initial Catalog=DBAcceso; User Id=sa; Password=sa; Connection Timeout=0;");
this.Cnn.Open();

this.Cmd = new SqlCommand(Sql, this.Cnn);
this.Cmd.ExecuteNonQuery();

this.Cnn.Close();
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

Ari Slash

Bueno tu conexión como dices, no tiene inconvenientes. La acabo de probar tal cual.
Intenta lo del SQL server Management Studio,
y ademas ejecutar el procedimiento del sistema "sys.sp_updatestats", que actualizara  indexara tu Base de datos, si es que el problema va por ahi.

Espero comentarios.

Saludos.

Shell Root

No lo he solucionado, cada query tarda unos 10seg aprox en ejecutarse  :-[
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

Ari Slash

Algun Disparador tendra aquella tabla en la que realizas el insert?

Shell Root

No, la base de datos sólo tiene 2 tablas. A la tabla que consulto sólo tiene 1 registro.
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

Ari Slash

Podrias postear la estructura de la tabla a la cual haces el insert. Y el insert mismo.