Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MySQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-03-2010
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 23
AzidRain Va camino a la fama
Es relativamente sencillo. En el TZConnection que utilizas para hacer la conexión podrás ver que tiene las propiedades para indicar el host, usuario, passw y base de datos la que se va a conectar. Basta indicar en host la ip o dominio en donde esta corriendo el servidor y con eso puedes acceder de manera remota. UNicamente tienes que abrir el puerto 3306 (si usas el default de MySQL) de tu firewall para que permita tráfico externo. Ojala y pudieras poner un resumen de estas propiedades del TZConnection que utilizas. No entiendo bien como haces el acceso ahorita, realmente que haces con los túneles, utilizas tu programa alojado en el servidor?, o utilizas un cliente en cada terminal que se conecta?

Por otro lado como te mencionaba el problema de los "deadlocks" de las transacciones se dá si explícitamente las estás utilizando en tu programa, este sería un ejemplo correcto:
Código Delphi [-]
 Datos.InitTransaction; //realmente lo que hago es mandarle al servidor un "START TRANSACTION"
    Try
     //Hacemos algo que puede fallar
       Datos.Commit;  //Nuevamente solo mando un "COMMIT" al servidor
    except
      Datos.RollBack; // Si algo falla deshacemos todo
    end;
Y esto nos produciría un deadlock:
Código Delphi [-]
 Datos.InitTransaction; //realmente lo que hago es mandarle al servidor un "START TRANSACTION"
    Try
     //Hacemos algo que puede fallar
      //Olvide hacer el comit!!
    except
      Datos.RollBack; // Si algo falla deshacemos todo
    end;

En el segundo si no hay error el rollback nunca se ejecuta y el servidor se queda indefinidamente esperando a que finalice esa transacción. Normalmente el efecto tarda a veces hasta varias horas en notarse. Lo notas porque el servidor empieza a mandar mensajes de error de que tiene bloqueada la tabla y no permite más acceso prácticamente a ninguna otra. Es decir, se paraliza totalmente hasta en tanto no mates la conexión que generó el deadlock.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como arrancar o parara un servicio en funcion de otro servicio ?? QuarkBcn API de Windows 12 15-06-2011 14:46:11
iniciar servicio mysql, error 5 JuanHC MySQL 2 18-07-2008 08:05:20
Servicio arantzal Varios 3 27-06-2007 10:50:55
MYSQL Levantar Servicio Cliente!!!!! mtirado MySQL 1 30-03-2007 22:14:21
Arrancar servicio MySQL? davezf MySQL 9 14-05-2005 19:01:32


La franja horaria es GMT +2. Ahora son las 19:15:25.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi