your una the online not have does datos conectarse conectar como allow all addresses address sql-server azure remote-access ports

the - Utilice SQL Server Management Studio para conectarse de forma remota a una instancia de SQL Server Express alojada en una máquina virtual Azure



firewall en azure (3)

Aquí están las tres páginas web en las que encontramos la respuesta. La parte más difícil fue configurar puertos estáticos para SQLEXPRESS.

Aprovisionamiento de una máquina virtual de SQL Server en Windows Azure . Estas instrucciones iniciales proporcionaron el 25% de la respuesta.

here . Leer esto cuidadosamente proporcionó otro 50% de la respuesta.

here . Esto permitió configurar puertos estáticos para instancias con nombre (por ejemplo, SQLEXPRESS). Nos llevó el 25% final de la respuesta.

Intento inicial

Tengo una máquina virtual Azure con Windows Server 2012, en la que acabo de instalar el componente SQL Server 2012 Express Database Engine. Luego, seguí las instrucciones here para conectar de forma remota con SQL Server Management Studio.

  1. Crear un punto final TCP para la máquina virtual
  2. Abra los puertos TCP en el firewall de Windows
  3. Configurar SQL Server para escuchar en el protocolo TCP
  4. Configurar SQL Server para autenticación de modo mixto
  5. Crear inicios de sesión de autenticación de SQL Server
  6. Determine el nombre DNS de la máquina virtual
  7. Conéctese al motor de base de datos desde otra computadora

Después del paso siete recibí el siguiente error:

Se ha producido un error relacionado con la red o específico de la instancia al establecer una conexión con SQL Server. El servidor no se encontró o no estaba accesible. Verifique que el nombre de la instancia sea correcto y que SQL Server esté configurado para permitir conexiones remotas. (proveedor: Proveedor de canalizaciones con nombre, error: 40 - No se pudo abrir una conexión con SQL Server) (Microsoft SQL Server, Error: 53)

¿Qué más debo configurar antes de conectarme de forma remota?

Solución de problemas

He estado siguiendo las instrucciones de solución de problemas here . Cada blockquote a continuación es un paso descrito que ese enlace.

Confirme que la instancia de SQL Server Database Engine está instalada y ejecutándose.

Hecho. Instalamos SQL Server Express, y se está ejecutando como una instancia llamada llamada SQLEXPRESS.

Si está intentando conectarse a una instancia con nombre, asegúrese de que el servicio del navegador SQL Server se esté ejecutando.

Hecho. Seguimos los pasos here para activar el servicio del navegador de SQL Server.

Obtener la dirección IP de la computadora.

Hecho. Los usaremos más adelante para probar la conectividad y quizás para configurar un puerto estático para SQLEXPRESS.

10.241.62.155

fe80 :: 45c: 8c29: e19f: f78b% 15

Obtenga el número de puerto TCP utilizado por SQL Server.

Hecho. Los registros del servidor de SQL Server Management Studio mostraban que el servidor estaba escuchando en el puerto 49169.

Habilitar protocolos

Hecho. Ya habíamos habilitado TCP / IP en el administrador de configuración, pero reiniciamos el servicio SQL Server por las dudas.

Prueba de conectividad TCP / IP

Hecho. Usamos tcping.exe para probar la conectividad (cmd ping no funciona rápidamente con Azure). Pudimos conectarnos al puerto 80.

  • tcping.exe buddha.cloudapp.net> exitoso
  • tcping.exe buddha.cloudapp.net 80> exitoso

Probando una conexión local

Hecho. Utilizamos sqlcmd.exe desde el símbolo del sistema y pudimos conectarnos localmente a través de TCP con un nombre de usuario y contraseña.

  • sqlcmd -S Buddha / SQLEXPRESS (éxito a través del protocolo de memoria compartida)
  • sqlcmd -S tcp: Buddha / SQLEXPRESS (éxito a través de TCP)
  • sqlcmd -S tcp: Buddha / SQLEXPRESS -U sa -P (éxito a través de TCP con nombre de usuario)
  • sqlcmd -S tcp: 10.241.62.155 / SQLEXPRESS -U sa -P (éxito con IP interna)

Apertura de un puerto en el cortafuegos

Abrimos el puerto en el que SQLEXPRESS escucha. Los registros del servidor (arriba) mostraron que SQLEXPRESS estaba escuchando en el puerto 49169, pero este es solo uno de muchos puertos dinámicos, y queríamos configurar el puerto estático 1435.

  • Use WF.msc para crear una regla TCP entrante para el puerto 1435.
  • Use Portal de administración de Azure para crear un punto final TCP para el puerto 1435.

Las instrucciones de solución de problemas también dicen:

Si se está conectando a una instancia con nombre o a un puerto que no sea el puerto TCP 1433, también debe abrir el puerto UDP 1434 para el servicio del navegador SQL Server.

Como estamos conectando SQLEXPRESS (una instancia con nombre), necesitábamos abrir el puerto 1434 para UDP.

  • Use WF.msc para crear una regla de UCP de entrada para el puerto 1434.
  • Utilice Portal de administración de Azure para crear un punto final UDP para el puerto 1434

La investigación adicional sobre la conexión a instancias con nombre reveló problemas de puertos dinámicos. La razón por la que estamos usando el puerto 1435 (estático) en lugar del puerto 49169 (una de las muchas opciones efectivas).

Las instancias de SQL Server Express, SQL Server Compact y las instancias con nombre de Database Engine usan puertos dinámicos. Para configurar estas instancias para usar un puerto específico, vea Configurar un servidor para escuchar en un puerto TCP específico (Administrador de configuración de SQL Server). y here .

Hecho. Fuimos a SQL Configuration Manager> Configuración de red de SQL Server> Protocolos para SQLEXPRESS> TCP / IP, hicimos lo siguiente.

Pestaña Protocolo> Escuchar todo> NO.

Pestaña Direcciones IP> para cada dirección incluida

  • Habilitado> Sí
  • Puertos dinámicos TCP> En blanco (eliminar el cero)
  • Puerto TCP> 1435 (o su elección)

Después de reiniciar el servicio SQLEXPRESS, volvimos a buscar en los registros de SQL Server Management Studio y descubrimos que el servidor está escuchando en el puerto 1435. ¡Hurra!

Probando la conexión

Hecho. Abrimos SQL Server Management Studio en nuestra computadora local (que no es Azure) y conectamos.

  • buddha.cloudapp.net, 1435 O buddha.cloudapp.net / SQLEXPRESS
  • sa
  • contraseña

Éxito.


El hecho de que obtenga un error del proveedor de conductos de nombres nos dice que no está utilizando el protocolo TCP / IP cuando intenta establecer la conexión. Intente agregar el prefijo "tcp" y especifique el número de puerto:

tcp:name.cloudapp.net,1433


Yo también luché con algo similar. Supongo que su problema real es conectarse a una instancia de SQL Express que se ejecuta en una máquina diferente. Los pasos para hacer esto se pueden resumir de la siguiente manera:

  1. Asegúrese de que SQL Express esté configurado para Autenticación de SQL así como también para Autenticación de Windows (por defecto). Esto se hace a través de SQL Server Management Studio (SSMS) Propiedades / Seguridad del servidor
  2. En SSMS cree un nuevo inicio de sesión llamado "sqlUser", por ejemplo, con una contraseña adecuada, "sql", por ejemplo. Asegúrese de que este nuevo inicio de sesión esté configurado para Autenticación de SQL, no para Autenticación de Windows. SSMS Server Security / Logins / Properties / General. Asegúrese también de que la opción "Aplicar política de contraseñas" no esté marcada
  3. En Propiedades / Funciones del servidor, asegúrese de que este nuevo usuario tenga el rol "sysadmin"
  4. En SQL Server Configuration Manager SSCM (archivo de búsqueda de SQLServerManagerxx.msc en Windows / SysWOW64 si no puede encontrar SSCM) en Configuración de red de SQL Server / Protocolos para SQLExpress, asegúrese de que TCP / IP esté habilitado. Puedes inhabilitar Named Pipes si quieres
  5. Haga clic con el botón derecho en el protocolo TCP / IP y en la pestaña IPAddresses, asegúrese de que cada una de las direcciones IP esté configurada en Enabled Yes, y TCP Port 1433 (este es el puerto predeterminado para SQL Server)
  6. En Windows Firewall (WF.msc) crea dos Reglas de entrada nuevas, una para SQL Server y otra para el servicio de navegador SQL. Para SQL Server necesita abrir el puerto TCP 1433 (si está utilizando el puerto predeterminado para SQL Server) y lo más importante para el servicio de navegador SQL es abrir el puerto UDP 1434 . Nombre estas dos reglas adecuadamente en su firewall
  7. Detenga y reinicie el servicio de SQL Server utilizando SSCM o el complemento Services.msc
  8. En el complemento Services.msc, asegúrese de que el tipo de inicio del servicio del navegador SQL sea automático y luego inicie este servicio.

En este punto, debe poder conectarse de forma remota, utilizando SQL Authentication, usuario "sqlUser" password "sql" a la instancia de SQL Express configurada como se indicó anteriormente. Un consejo final y una manera fácil de verificar esto es crear un archivo de texto vacío con la extensión .UDL, diga "Test.UDL" en su escritorio. Al hacer doble clic para editar este archivo se invoca el cuadro de diálogo Propiedades de Microsoft Data Link con el que puede probar rápidamente su conexión remota de SQL.