Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MySQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-03-2008
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Cita:
Empezado por keyboy
No sé bien porqué deba ser un debate.
Cierto; esta bien donde está!

Cita:
Empezado por my.ini
port=3666
Código:
MyDAC; Can't connect to MySQL server on '???'...
telnet y "otros" tampoco retornan una respuesta satisfactoria ante tal eventualidad; ahora estamos hablando (como tu ya dijiste), de una pregunta genérica a la cual he respondido de la forma más objetiva posible, y como ya le dije al compañero AzidRain;

Cita:
Empezado por cHackAll
...ésta, mi humilde impresión y cualquier otro método (efectivo), sera doblemente bienvenido.
Responder Con Cita
  #2  
Antiguo 27-03-2008
keyboy keyboy is offline
Miembro
 
Registrado: oct 2004
Posts: 367
Poder: 20
keyboy Va por buen camino
A ver, creo que empiezo a ver por donde vas. Pero es que eres un poco escueto (no lo digo en mal plan) y si me pones un fragmento de un INI y un extracto de un DOC sin más explicación, pues bueno, yo al menos no soy tan clarividoso.

Es cierto, telnet tampoco va a ser infalible. De hecho no lo dije con mucho convencimiento

Cita:
O quizá con telnet, a ver si responde el puerto 3306 o donde se supone que esté instalado
Yo a lo que voy es a que ninguno de los métodos expuestos es fiable. Pero, insisto, el método del LoadLibrary únicamente determina una cosa: hay o no una librería libmysql.dll en el path de Windows. Nada más. La existencia o no de dicha librería tiene poco que ver con la disponibilidad del servidor (demonio), como ya he expuesto.

Bye
Responder Con Cita
  #3  
Antiguo 27-03-2008
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
Pero seguimos cayendo en lo mismo, supongamos el siguiente pseudocódigo para el hipotético instalador:

Código:
  Si Existe la dll
      Si puedo conectarme a MySQL en el puerto 3306 en localhost
          Creo las bases de datos y las tablas y procedo a la instalación.
      de lo contrario
         Error: No es posible conectarme al servidor en localhost
  de lo contrario
    No está instalado (!!) MySQL
Por definición un instalador de cualquiera que sea el programa no tiene por que leches presuponer que ya se encuentra instalado el servidor fulano, mengano o perengano. El servidor de bases de datos es un programa INDEPENDIENTE de la aplicación en cuestión por lo que lo más que puede hacer el instalador es preguntar en donde se supone que está instalado y actuar en consecuencia:

Código:
  Desempaqueta la DLL que usa el componente mediante el cual te conectas a MySQL   
(Zeos, MyDac, "MyAbuela") en la carpeta del instalador. 
  Escribe "Te advierto que para instalar este programa es necesario que previamente esté
 instalado  MySQL  y que hayas dado de alta un usuario válido con privilegios en la base de datos "xxxx".
  Pregunta "Dame la dirección del servidor MySQL?"
  Pregunta "Con qué usuario voy a entrar a MySQL?"
  Pregunta "Con qué password?"
  
  Si puedo conectarme al servidor con los datos indicados
    voilá...procede a crear la base de datos y crear las tablas.
    continúa la instalación.
  de lo contrario
    Error:  No fue posible conectarse al servidor indicado con los datos proporcionados.
Por mera seguridad hay que dar de alta el usuario de MySQL y crear la base de datos a la cual tendrá acceso. No quiero ni pensar en que se les ocurra darle el root como usuario para que haga lo que se le pegue la gana con las bases de datos.

Mis chavos, no se confundan, MySQL, FireBird, Posgress y SQL Server son todas aplicaciones INDEPENDIENTES de su software y por mucho que quieran automatizar las tareas NUNCA deben instalarse al mismo tiempo. No por nada en muchos proyectos de desarrollo se asigna un DBA para que se haga cargo de pelearse con el motor de su elección a condición de que podamos hacer lo que necesitamos con las tablas.

Como ya mencioné y al parecer nadie leyó, si mi aplicación necesita MySQL debo indicarlo en la documentación y al principio de la instalación. El usuario "es responsable" de tener instalado MySQL y con el ususario que se le pide para poder continuar.

Pero en fin, si queremos seguir haciendo chapuzas pues hagámoslas que caray.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #4  
Antiguo 27-03-2008
keyboy keyboy is offline
Miembro
 
Registrado: oct 2004
Posts: 367
Poder: 20
keyboy Va por buen camino
Desconozco en qué parte he mencionado algo en favor o en contra de instalar MySQL junto con nuestra aplicación. Yo me he limitado a argumentar porqué tales o cuales métodos me parecen insuficientes para determinar la existencia del servidor, y a señalar que no es lo mismo determinar si está instalado el servidor o el cliente.

De hecho yo tampoco instalaría el servidor junto con mi aplicación por el mero hecho de que muy posiblemente el servidor residirá en otra máquina. Asímismo, tampoco crearía usuarios, y, por cierto, tampoco crearía ni bases ni tablas, que lo haga el DBA.

Pero hay de casos a casos, y quizá se trate de una aplicación local donde no hay DBA ni nada que se le parezca. No veo ningún problema entonces en que el instalador cree usuarios, bases y tablas. ¿Chapucero? Pues si lo quieres calificar así. Para mi sería un ahorro de trabajo.

Claro que todo esto es debatible, y quizá a eso se refiere el compañero cHackAll con lo de trasladar este hilo a debates.

Bye
Responder Con Cita
Respuesta



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
Comprobar si se esta conectado a internet Drake OOP 7 21-12-2006 15:38:18
En que pc esta instalado Mysql? pborges36 Conexión con bases de datos 4 30-06-2006 21:43:59
saber si esta php instalado coulthard Internet 4 20-04-2006 19:56:43
FireBird: Winsock 2 no esta instalado JulioGO Firebird e Interbase 1 02-09-2004 19:09:00
como comprobar que está instalado el BDE? lemon-club Conexión con bases de datos 1 14-06-2003 18:49:20


La franja horaria es GMT +2. Ahora son las 01:27:37.


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