No se puede conectar a la instancia de SQL Server de forma remota


Estoy intentando acceder a la instancia de SQL Server en mi VPS desde SQL Server Management Studio en mi equipo local. No está funcionando (el error que estoy recibiendo es:

Se produjo un error relacionado con la red o específico de la instancia mientras establecer una conexión con SQL Server. El servidor no fue encontrado o no era accesible. Compruebe que el nombre de la instancia es correcto y que SQL Server está configurado para permitir conexiones remotas.

Creo que esto es porque necesito configure el motor de base de datos para permitir conexiones remotas (corríjame si me equivoco!). Así que he encontrado esta guía paso a paso para ayudarme a hacer eso: http://www.linglom.com/2009/03/28/enable-remote-connection-on-sql-server-2008-express / ¡He llegado al punto 10 de la guía y ahora estoy atascado! No tengo SQL Server Management Studio instalado en mi VPS. De todos modos, esto me ha dejado con dos opciones:

  1. Instalar SSM
  2. Encontrar otra manera de hacer el punto 10 en adelante en la guía sin tener instalado SSM

Intenté instalar SSMS en mi VPS usando el Instalador de la plataforma Web, pero sigue fallando. No se por qué está fallando porque no parece dar una razón por qué. ¿Alguien sabe cómo puedo permitir conexiones remotas de una manera diferente?

La versión de SQL Server instalada en mi VPS es SQL Server 2008 R2 Express.

Actualización :

He intentado desactivar el firewall en mi portátil y VPS para ver si es un problema de firewall. Esto no hizo ninguna diferencia en el mensaje de error.

Otra Actualización:

Habiendo podido instalar SSMS (instalé directamente desde el sitio web en lugar de usar el WPI), he podido verificar que el servidor esté configurado para permitir conexiones remotas (fui a SSMS, conectado a la instancia de SQL Server, hice clic con el botón derecho en la conexión, hice clic en Propiedades, fui a la pestaña Conexiones. "Permitir conexiones remotas a este servidor" ya está marcar).

SOLUCIÓN

Gracias a todos por ayudarme a llegar a esta solución. ¡Por fin he conseguido que funcione! Seguí el consejo de Filip De Vos y abrí los puertos en el Firewall en mi VPS y luego recibí un mensaje de error diferente. Esto me llevó a investigar más y descubrí que estaba usando las credenciales incorrectas para iniciar sesión. Así que he establecido una contraseña para el usuario sa y me las he arreglado para iniciar sesión con eso! Gracias de nuevo!

Author: marc_s, 2011-08-08

6 answers

  • Para habilitar la autenticación mixta, puede cambiar la siguiente clave de registro:

    HKLM\Software\Microsoft\Microsoft SQL Server\MSSQL.1\MSSQLServer\LoginMode
    

    Actualice el valor a 2 y reinicie el servicio Sql Server para permitir la autenticación mixta. Tenga en cuenta que MSSQL.Es posible que sea necesario actualizar 1 para reflejar el número de la instancia de SQL Server que está intentando cambiar.

  • Una razón para los errores de conexión puede ser un escáner de virus instalado en el servidor que bloquea sqlserver.exe.

  • Otra razón puede ser que el servicio SQL Server Browser no se está ejecutando. Cuando este servicio no se está ejecutando, no se puede conectar en instancias con nombre (cuando están utilizando puertos dinámicos).

  • También es posible que Sql Server no esté configurado para escuchar conexiones TCP y solo permita canalizaciones con nombre.

    1. En el Menú Inicio, abra Programas > Microsoft SQL Server 2008 > Herramientas de Configuración > Configuración del Área de Superficie de SQL Server
    2. En la utilidad de configuración de área de superficie, haga clic en el enlace "Servidor SQL Gestor de configuración"
    3. Expanda "SQL Server Network Configuration" y seleccione Protocolos.
    4. Habilitar TCP/IP. Si necesita Tuberías con nombre, entonces puede habilitar aquí también.
  • Por último, pero no menos importante, el firewall de Windows debe permitir conexiones a SQL Server

    1. Agregue una excepción para sqlserver.exe cuando se utiliza el sistema "Puerto dinámico".
    2. De lo contrario, puede poner excepciones para los puertos de SQL Server (puerto predeterminado 1433)
    3. También agregue una excepción para el navegador SQL Server. (puerto udp 1434)

Más información:

Como última nota, SqlLocalDB solo admite tuberías con nombre, por lo que no puede conectarse a él a través de la red.

 47
Author: Filip De Vos,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-10-07 12:59:41

Además de configurar el servicio SQL Server Browser en Servicios.msc a Automático, y al iniciar el servicio, tuve que habilitar TCP / IP en: SQL Server Configuration Manager / SQL Server Network Configuration / Protocols for [INSTANCE NAME] | TCP/IP

introduzca la descripción de la imagen aquí

 6
Author: Keith Hays,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-10-18 22:48:53
  1. Inicie SQL Server Configuration Manager en su VPS.

  2. Eche un vistazo a la configuración de la red de SQL Server. Asegúrese de que TCP / IP está habilitado.

  3. A continuación, eche un vistazo a los servicios de SQL Server. Asegúrese de que SQL Server Browser se está ejecutando.

  4. Reinicie el servicio para su instancia de SQL Server.

 5
Author: JYelton,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-08-08 19:55:48
  1. Abra el Administrador de configuración de SQL Server.... 2.Compruebe si TCP y UDP se están ejecutando o no.... 3.Si no se está ejecutando , habilítelos y compruebe que el navegador de SQL Server se está ejecutando o no.Si no se está ejecutando, enciéndalo.....

  2. A continuación tienes que comprobar qué puertos TCP y UDP está utilizando. Tienes que abrir esos puertos desde tu firewall de Windows.....

5. Haga clic aquí para ver los pasos para abrir un puerto específico en Windows cortafuegos....

  1. Ahora SQL Server está listo para acceder a través de LAN.......

  2. Si desea acceder a él de forma remota (a través de Internet) , tiene que hacer otro trabajo que es 'Reenvío de puertos'. Ha abierto los puertos TCP y UDP que está utilizando en SQL Server en su enrutador. Ahora la configuración de los routers es diferente. Si me da los detalles de su enrutador (es decir , el nombre de la empresa y la versión), puedo mostrarle los pasos para reenviar un puerto específico.

 2
Author: Paul S,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-11-09 09:24:56

Recientemente actualizé de SQL 2008 R2 a SQL 2012 y tuve un problema similar. El problema era el firewall, pero más específicamente la regla de firewall para SQL SERVER. La regla personalizada se señaló a la versión anterior de SQL Server. Pruebe esto, abra Firewall de Windows>Configuración avanzada. Busque la regla de SQL Server (puede tener un nombre personalizado). Haga clic con el botón derecho y vaya a propiedades, luego a la pestaña Programas y Servicios. Si Programas-Este programa está seleccionado, debe buscar la versión adecuada de sqlserver.exe.

 0
Author: Jim,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-01-27 23:22:41

Tuve el mismo problema cuando mi firewall estaba configurado correctamente, TCP/IP estaba habilitado en SQL Server Configuration Manager, pero aún así no podía acceder a mi base de datos SQL desde fuera del equipo que la alojaba. Encontré que la solución era SQL Server Browser estaba deshabilitada de forma predeterminada en Services (y no había ninguna opción disponible para habilitarla en SQL Server Configuration Manager).

Lo habilité por Panel de Control > Herramientas administrativas > Servicios luego haga doble clic en SQL Server Browser. En el establezca el tipo de inicio en Automático utilizando la lista desplegable. A continuación, vuelva al Administrador de configuración de SQL Server y compruebe que el navegador de SQL Server está habilitado. Espero que esto ayude. introduzca la descripción de la imagen aquí

 0
Author: user3095420,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-07-03 15:26:20