Page 1 of 1

Conexion Mysql en forma remota

PostPosted: Thu May 22, 2008 10:52 pm
by ruben Dario
Por fa quien tiene un ejemplo completo para hacer una conexion Remota con Mysql y hacer la consula con Xbrowse, La conexion que hago actualmente me funciona bien en forma local, pero no me funciona en forma remota

PostPosted: Thu May 22, 2008 11:06 pm
by pablovidal
Hola tienes que tener el puerto 3306 abierto si usas un firewall y si es desde un lugar remoto atraves de internet en el router tienes que hacer nap al 3306 a la pc donde estas corriendo mysql. Tambien tienes que dicerle a mysql que te vas a conectar de forma remota.

Ej.

si el usuario remoto quiere conectarse en la definicion de clave tienes que ponerle % en vez de localhost

PostPosted: Fri May 23, 2008 3:59 pm
by ruben Dario
pablovidal wrote:Hola tienes que tener el puerto 3306 abierto si usas un firewall y si es desde un lugar remoto atraves de internet en el router tienes que hacer nap al 3306 a la pc donde estas corriendo mysql. Tambien tienes que dicerle a mysql que te vas a conectar de forma remota.

Ej.

si el usuario remoto quiere conectarse en la definicion de clave tienes que ponerle % en vez de localhost


Y tienes algun el codigo de ejemplo, la conexion con Utilitarios como Mysql Fron me funciona bien

PostPosted: Fri May 23, 2008 6:50 pm
by luisduque
Hola
Para trabajar con MySql puedes Instalar AppServer el te instala Php, Apache y Mysql
Despues de Instalado Escribes en el Explorador http:\\localhost o de igual formar http:\\tuip
y desde ese lugar puedes entrar y administrar la base de datos y crearla si quieres. Por otro lado esta el MySql-Front que es como el famoso DBU para poderte conectar remotamente tienes que tener en cuenta que el puerto usado para accesar a MySql es el 3306 y si tienes algun Firewall o cortafuegos el lo desactiva aqui te dejo algunas paginas que te muestran si estan abiertos o cerrados los puerto

http://www.upseros.com/portscan.php

http://www.internautas.org/w-scanonline.php

http://www.nsrch.com/port_result.php

http://security.symantec.com/sscv6/defa ... &venid=sym


cuando se instala el AppServ

el crea una carpeta
c:\AppServ\MySql\Data
en esa carpeta se crean la base de datos y dentro de ellas las tablas son
parecidos a la forma como se crean los dbf

si quieres te envio una base de datos y con el ejemplo de xbrowse tanto con dbf y con MySql lo unico que no he podido es con el xbrowse indicarle los campos que quiero que salgan

me das tu correo y te envio lo que necesites

Luis Duque
San Cristobal-Venezuela

PostPosted: Fri May 23, 2008 7:01 pm
by pablovidal
Usando la Eagle1 de Manu:

Code: Select all  Expand view
::oConLocal := TMSConnect():New()

If !::oConLocal:Connect( "196.3.81.5", "usuario", "clave", , 3306, ,( 65536 + 131072 ) )
  Return( .F.)
Endif


( 65536 + 131072 ) con esto puedo mandar a gravar mas de un query a mysql

Ejemplo

PostPosted: Fri May 23, 2008 7:22 pm
by luisduque
Hola

este ejemplo trabaja bien tanto con dbf como mysql
cree una variable lAdo=.t. para MySql lAdo=.f. para Dbf
Este ejemplo esta con Adobase de Adolfo de Chile es muy bueno y facil de utilizar

Code: Select all  Expand view
#include "FiveWin.ch"
#include "xBrowse.ch"

STATIC oWnd

//-------------------------------------------------------------------------------------
Function Main()

SET EPOCH TO 1920
SET DATE FORMAT "dd/mm/yyyy"
SET WRAP ON

REQUEST DBFCDX

If !Conectar()
   Return Nil
Endif

maestro()

Return Nil

//-----------------------------------------------------------------------------
Function conectar()
   Local Retorno:=.F.
   LOCAL oErr,oCs
   Public oCn

   TRY
      oCn:= CreateObject( "ADODB.Connection" )
      oCs:= "DRIVER={MySQL ODBC 3.51 Driver};  SERVER=localhost; DATABASE=ecst06; UID=root; PWD=10157763"
      oCn:Open(oCs)
      Retorno:=.T.
   CATCH oErr
      MSGAlert( "Error: " + oErr:Operation + " -> " + oErr:Description )
      Retorno:=.F.
   END

   Return Retorno


Function maestro()
   local oBrw
   Local cSelect:=  "select maestro.FECASI, maestro.ASIENTO, maestro.DESCASI, maestro.TOTDEB, maestro.TOTHAB from maestro"

   lAdo := .t.
   
   If lAdo
      oDbDet:=TAdoBase():New( oCn, "maestro", cSelect )
   Else
      use maestro new
      select maestro   
   EndIf
   
   DEFINE WINDOW oWnd FROM 1, 1 TO 700,950 PIXEL TITLE "prueba adobase"
    
          oBrw := TXBrowse():New( oWnd )
       
        oBrw:nTop    := 20
        oBrw:nLeft   := 10
        oBrw:nBottom := 650
        oBrw:nRight  := 900
               
        oBrw:nColDividerStyle    := LINESTYLE_BLACK
        oBrw:nRowDividerStyle    := LINESTYLE_BLACK
        oBrw:nHeaderLines        := 2
        oBrw:nFooterLines        := 2
        oBrw:nDataLines          := 1
        oBrw:lColDividerComplete := .T.
        oBrw:lFooter             := .t.
       
        oBrw:cToolTip = "Este es el poder del xBrowser de fwh"
       
        If lAdo
             oBrw:SetAdo(oDbDet:oRcs)
        Else    
           oBrw:SetRDD()
        EndIf
       
        oBrw:CreateFromCode()
   
   ACTIVATE WINDOW oWnd
   
   If lAdo   
      oDbDet:Close()
   EndIf

RETURN NIL

PostPosted: Fri May 23, 2008 10:48 pm
by Alfredo Arteaga
Aprovecho el viaje (y no es publicidad).

Actualmente estoy usando SQLRDD y veo que trabaja sin problema con procesos que no requieran de grandes volúmenes de información.

En algunos procesos (como facturación) estoy afectando hasta ocho tablas en forma remota y concurrente, !funciona!.

Si hay alguna duda puedes descargar RC-eXtended desde www.despachoarteaga.com.mx, revisa la AYUDA en la sección Operación Remota o si gustas puedes ponerte en contacto conmigo a mi correo y hacemos las pruebas que requiras.

Todo este código es totalmente xBase trabajado con FiveWin y xHarbour con unas cuantas líneas de cambio para ligar la LIB.

PostPosted: Tue May 27, 2008 9:22 pm
by ruben Dario
pablovidal wrote:Usando la Eagle1 de Manu:

Code: Select all  Expand view
::oConLocal := TMSConnect():New()

If !::oConLocal:Connect( "196.3.81.5", "usuario", "clave", , 3306, ,( 65536 + 131072 ) )
  Return( .F.)
Endif


( 65536 + 131072 ) con esto puedo mandar a gravar mas de un query a mysql


Pablo me podrias faciliar un ejemplo completo usando TMSConnect():New()

Que diferencia entre TMSConnect():New() y CreateObject( "ADODB.Connection" )

PostPosted: Wed May 28, 2008 10:57 pm
by jponce
La diferencia es que una es Odbc y la otra es Oledb.

Atentamente,
Julio Rodrigo Ponce Hinestroza


ruben Dario wrote:
pablovidal wrote:Usando la Eagle1 de Manu:

Code: Select all  Expand view
::oConLocal := TMSConnect():New()

If !::oConLocal:Connect( "196.3.81.5", "usuario", "clave", , 3306, ,( 65536 + 131072 ) )
  Return( .F.)
Endif


( 65536 + 131072 ) con esto puedo mandar a gravar mas de un query a mysql


Pablo me podrias faciliar un ejemplo completo usando TMSConnect():New()

Que diferencia entre TMSConnect():New() y CreateObject( "ADODB.Connection" )