sql >> Base de Datos >  >> RDS >> Mysql

¿Por qué mi código php no se conecta a mi base de datos MySql remota?

Lo primero que verificaría (si no lo ha hecho) es que, de hecho, puede conectarse a la base de datos desde la computadora que ejecuta su script PHP. Esto para descartar un problema de red o firewall.

Lo primero sería hacer ping al servidor. En un indicador de DOS, ejecute:

ping servername

Donde "nombre del servidor" es la misma cadena que puso en su secuencia de comandos PHP anterior. Si esto no responde con una cadena similar a la de abajo, específicamente, la primera palabra no es "Responder":

Reply from 192.168.239.132: bytes=32 time=101ms TTL=124

Esto significa que lo más probable es que no haya conectividad entre la computadora que ejecuta el script PHP y el servidor mysql. Luego verificaría si el servidor y la computadora están correctamente conectados a la red, si el servidor está activo, y si no hay un firewall en su computadora que ejecuta el script PHP o en el servidor.

Ahora, si su prueba anterior muestra "Responder" al ping, puede probar si puede conectarse al servicio Mysql desde su servidor php. Para esto puede usar el banco de trabajo Mysql (http://dev.mysql.com/downloads/workbench/ ) y desde ahí crea una conexión con los parámetros de la base de datos que le estás dando a tu script. Si no puede conectarse con Mysql Workbench, es posible que deba deshabilitar un firewall en su servidor Mysql, un firewall en su computadora que ejecuta PHP o habilitar el servidor Mysql para aceptar conexiones remotas para la base de datos y el nombre de usuario que usa en su script PHP ( algunas distribuciones del servidor Mysql están instaladas para aceptar solo conexiones locales por seguridad).

Si el problema es un permiso en el servidor (el usuario solo puede conectarse localmente pero no desde una computadora remota, por ejemplo), puede habilitar el permiso en el servidor Mysql con el comando GRANT:http://dev.mysql.com/doc/refman/5.1/en/grant.html