Visual Basic Foro
Programación => Bases de Datos => Mensaje iniciado por: Paulita en Octubre 12, 2015, 11:30:33 am
-
Buenos días, escribo en esta ocasión porque hice un programa con una conexión del servidor en forma remota, este es el código que estoy utilizando:
servidor="nombredelservidor.no-ip.org:8080"
conexion.ConnectionString = "DRIVER={MySQL ODBC 5.1 Driver};" _
& "SERVER=" & servidor & ";" _
& "PORT=3306;" _
& "DATABASE=control;" _
& "UID=usuario;PWD=password; OPTION=3"
conexion.open
ahorita funciona bien pero tengo que generar un .exe para que trabaje en forma local por si acaso se va el internet puedan trabajar en red, le coloco la ip pero me da error, como tendría que hacer la conexión en forma local?, si me pudiera ayudar se lo agradecería.
-
Hola, Paulita.
¿Estás colocando la ip pública o la interna de la pc que aloja a la base de datos?
Ahora, una consulta: ¿por qué trabajarían por internet si pueden hacerlo por LAN? ¿O son dos bases de datos diferentes?
Muchas gracias.
Jerónimo
-
visita mi aportete hay te puedes guiar el enlace es
http://leandroascierto.com/foro/index.php?topic=3075.0 (http://leandroascierto.com/foro/index.php?topic=3075.0)
-
Tenes que tener en cuenta algunas cosas.
Primero la pc servidor donde esta instalado el mysql, si tiene el firewall activado que el puerto donde escucha el mysql este abierto en las reglas, ya sea el puerto por defecto o algun otro que le hayas especificado.
en la cadena de conexion podes poner la IP Local, o el nombre de la pc en red, es lo mismo.
Otra prueba que podes hacer, es probar de crear un ODBC(DNS) en la pc para ver si te podes conectar al servidor de la red. eso está en el panel de control->herramientas administrativas->Orígenes de datos ODBC, ahi te creas un DNS con el driver de mysql y probas a ver que te dice.
-
Cuando usas no-ip el ya lo redirecciona al puerto que especificaste de tu pagina web en tu caso 8080.
Revisar en consola mysql lo siguiente
(http://snag.gy/jcTWf.jpg)
% indica que puede trabaja en una red wan o internet y localhost en una red lan
Yo pongo un combobox cuya lista es la siguiente:
LOCALHOST
127.0.0.1
nombredelservidor.no-ip.org(ESTE SE GUARDA EN UN ARCHIVO DE REGISTRO COMO INDICE AL COMBOBOX)
y la basede datos en un textbox
SI TIENES ROUTER TIENES QUE ABRIR LOS PUERTOS EN FORWARDING-VIRTUAL SERVER EJEMPLO 192.168.0.100 PORT 8080 PROTOCOL=ALL (SI NO SABES CUAL DE TCP O UDP MANEJA) AQUI ABRIRA EL PUERTO 8080 DE INTERNET Y LO REDIRIGUE A TU IP LOCAL
192.168.0.100 PORT=3306 PROTOCOL=ALL PARA MANEJAR MYSQL,ETC
Y por DMZ pero este te abre todos los puertos de tu ip privada a internet yo lo usu como prueba mas no es recomendable.
TAMBIEN TIENES QUE TENER EN CUENTA EL FIREWALL DE WINDOWS O EL FIREWALL DEL ANTIVIRUS T ABRIR LOS PUERTOS.
ver con el explorador de windows la siguiente ruta C:\WINDOWS\system32\drivers\etc
editar el archivo hosts con el block de notas aparece algo como esto
# Copyright (c) 1993-1999 Microsoft Corp. # # Este es un archivo HOSTS de ejemplo utilizado por Microsoft TCP/IP para Windows. ## Este archivo contiene las asignaciones de direcciones IP a nombres de host. Cada # entry debe mantenerse en una línea individual. La dirección IP # se deben colocar en la primera columna seguida del nombre de host correspondiente. # La dirección IP y el nombre de host deben estar separados por al menos un # space. # # También es posible insertar comentarios (como los siguientes) en líneas # individuales o tras el nombre del equipo indicado mediante el símbolo "#". # # Por ejemplo: ## 102.54.94.97 rhino.acme.com # source servidor # 38.25.63.10 x.acme.com # x host cliente
127.0.0.1 localhost
Lo cual indica que esta bien todo.