mariovaldez.net

MV.net forums
It is currently 14 Jul 2016, 00:50

All times are UTC - 7 hours




Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 2 posts ] 
Author Message
PostPosted: 27 Nov 2005, 23:35 
User avatar

Joined: 06 Mar 2003, 03:21
Posts: 447
Location: Monterrey, NL, Mexico
Esta nota es OBSOLETA, porque las nuevas versiones de la aplicación ya no necesitan una conexión directa con el servidor de base de datos MySQL (como las versiones anteriores).

Hola a todos. Voy a tratar de explicar los problemas más comunes para conectarse al servidor de base de datos MySQL y cómo resolverlos.

Si usted es el administrador de MySQL, considere que la mayoría de las verificaciones pueden ser hechas desde la interfaz web de phpMySadmin (que podría estar habilitada en su servidor).


¿Cuáles son los parámetros del servidor de base de datos?
Si instaló/configuró su propio servidor de osCommerce Usted ya tiene esta información.

Si no la recuerda o no está seguro, revise el archivo de osCommerce catalog/includes/configure.php. Cerca del final del archivo están las siguientes constantes: DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD y DB_DATABASE, las que corresponder con las siguientes opciones de OSCPMWin (en la ventada de Configuración, sección Base de Datos): Servidor, Nombre de Usuario, Contraseña y Base de Datos. El puerto predeterminado de MySQL es el 3306.


¿Qué hago si el nombre del servidor es "localhost"?
El nombre del servidor que debe poner en la configuración de OSCPMWin es el nombre del servidor tal como lo ven otras computadoras. Averigüe cuál es el nombre del servidor (¿quizás www.dominiodesutienda.com?) Si tiene duda, pregunto a su proveedor de servicio o al administrador del servidor.

También revise que el usuario está configurado para ser utilizado tanto desde localhost como desde otras computadoras. Si tiene duda, pregunte al administrador del servidor, o si Usted es el administrador, revise la tabla de permisos de MySQL (revise el campo Host del usuario).


¿Qué usar en el número del puerto?
El número del puerto que se puede configurar en la aplicación OSCPMWin generalmente es el 3306. Si el nombre del servidor (tal como está configurado en el osCommerce) contiene un número ":xxxx" ese el el número del puerto. Si no usa ninguno, use el predeterminado (3306).

Si el nombre del servidor incluye un camino (como :/tmp/mysql.sock o algo así) entonces la tienda osCommerce se está conectando a través de un socket local, el cual no puede ser utilizado por la aplicación OSCPMWin. Averigüe si el servidor de BD puede recibir conexiones a través de TCP.


¿Cómo reviso la conectividad TCP del servidor MySQL?
Use la aplicación telnet (como la que incluye Windows). En el símbolo del sistema invoque el comando "telnet nombreservidor 3306", donde nombreservidor es el nombre del servidor de MySQL.

a) Si recibe un mensaje similar a "No se puede abrir una conexión al host en puerto 3306: Error en la conexión" significa que no puede establecer un enlace con el servidor de BD. Quizás hay un firewall o simplemente el servidor de MySQL está configurado para no aceptar conexiones TCP. Si MySQL está utilizando un puerto diferente también le aparecerá este error. También, esto puede pasar si se conecta al servidor equivocado. En la aplicación, este problema generalmente se visualiza como un error 10060.

b) Si recibe un mensaje como "P*Host 'sucomputadora' is not allowed to connect to this MySQL server" donde "sucomputadora" es el nombre de su estación de trabajo con Windows, entonces MySQL está configurado para negar las conexiones remotas (o al menos las conexiones desde su estación de trabajo).

c) Si recibe un mensaje como "4.0.15*******" entonces su servidor de MySQL sí puede recibir conexiones TCP desde su computadora.


En el caso a) Usted debe revisar con el administrador de la red (quizás ese es Usted mismo) si hay algo que bloquee la conexión. Revise si hay firewalls (incluyendo firewalls locales en su computadora). revise la conexión desde el mismo servidor (si tiene acceso). Revise si el servidor tiene varios nombres, pruebe con la dirección IP.

En el caso b) necesita reconfigurar a MySQL (o pedirle al administrador del servidor) para permitir conexiones remotas desde su computadora. Si no puede hacer eso, revise si tiene una cuenta SSH en el servidor e intente con el túnel SSH activado en el OSCPMWin. (Con el túnel SSH el servidor ve la conexión como local).

En el caso c) Usted debe poder conectarse desde la aplicación OSCPMWin.


¿Cómo reviso si tengo una cuenta SSH?
Si está utilizando un servicio de hospedaje web compartido quizás su proveedor le da acceso SSH, revise las características de su servicio de hospedaje o pregúntele a su proveedor.

Si está utilizando un servicio de coubicación (colocation) entonces seguramente Usted sí tiene varias cuentas SSH.

Si Usted está utilizando sus propios servidores (o los de su compañía) entonces seguramente tiene una o varias cuentas SSH. Si no está seguro (porque Usted no sea el administrador) pídale al administrador del servidor que le proporcione una cuenta SSH.

Si al administrador del servidor le preocupa el hecho de darle a Usted acceso por SSH al servidor, explíquele que solamente la utilizará para hacer un túnel para la conexión de MySQL, que el intérprete de comandos (shell) de su inicio de sesión puede cambiarse a un intérprete falso (dummy shell) de modo que nadie pueda ejecutar comandos remotos desde esa cuenta (menciónele esta página: http://www.mariovaldez.net/software/sleepshell/).

Tome en cuenta que OSCPMWin depende de PLINK (el cual está incluido con OSCPMWin), una aplicación SSH de código abierto de puTTY para crear el túnel SSH al servidor.


Me aparece un mensaje como "Access denied" o algo como eso.
Su usuario no tiene permisos para conectarse desde su estación de trabajo. La mayoría de los servidores de MySQL están configurados de manera predeterminada para permitir conexiones solamente desde la misma computadora donde está corriendo. Las conexiones remotas deben habilitarse para cada usuario.

Las soluciones son 2:
1) Pida al administrador del servidor que le habilite a su usuario como remoto, o si Usted es el administrador del servidor, cambie el campo Host del registro de permisos del usuario a "%" o al nombre de la estación de trabajo.
2) Use el túnel SSH. Como se explicó anteriormente, el servidor verá su conexión como si viniera desde el mismo servidor, permitiéndole conectarse.


¿Qué pasa si no puede hacer conexiones directas a la BD?
No hay solución para estoy (actualmente). Estoy consciente que este es un problema para muchos usuarios que utilizan servicios de hospedaje compartido. Estoy trabajando en una solución.

Estoy diseñando una interfaz HTTP para hacer las transacciones de la base de datos como una alternativa al protocolo MySQL directo. Pero aún no está lista.

AVISO: Ya hay una versión en pruebas, que no utiliza conexiones directas. Visite el siguiente URL para más información: http://www.mariovaldez.net/webapps/forums/viewtopic.php?t=294


¡¿Dónde está la documentación?!
No hay actualmente. Comprendo sus sentimientos (yo también soy usuario de software). Escribiré la documentación y espero publicarla en Diciembre. No puedo remarcar más que esta es una versión preliminar; piense en ella como una versión alfa o beta. Por favor, acepte estoy por ahora.


Trataré de ayudarles tanto como pueda en estoy foros. :)


Si tienen alguna pregunta, comentarios o sugerencias, por favor publíquenlos en los foros.


Saludos,

Mario A. Valdez-Ramírez.


Last edited by mvaldez on 01 Jun 2007, 09:24, edited 2 times in total.

Report this post
Top
 Profile  
Reply with quote  
PostPosted: 08 May 2006, 22:45 

Joined: 08 May 2006, 21:55
Posts: 1
Mario:
Felicidades pro la aplicación, antes que nada soy nuevo en el uso de Mysql y oscommerce.

Logre completar la instalación, probar la coneccion de tunnel SSH y ejecutar http://www.misitio.com.mx/oscom/oscpm1_upload.php.

el problema es que al conectar la aplicación me da el siguiente error:

Error while connectng to database(bbmx_osc1@127.0.0.1). Sql Error: Cant connect to MySQLserver on '127.0.0.1'(10061).

mi configuracion es:

Database Options:
Host: www.misitio.com.mx
username: bbmx_bbmx
Port: 22
Pasword: ****

Database: bbmx_osc1
Protocol: Mysql-4.0

Y SSHencrypted tunnel options:
SSH username: bbmx
SSH pasword: ****
Local Tunnel Port: 22
SSH wait time: 2000

No se si tienes alguna idea de o que pasa.
Gracias de antemano
RPW


Report this post
Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 2 posts ] 

All times are UTC - 7 hours


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group