Notas sobre el trabajo de MySQL con MAMP / MAMP PRO, cómo acceder a la consola de MySQL por línea de comandos en el terminal.
La manera más popular de contar con Apache + PHP + MySQL en Mac OS X es a través del conocido MAMP, una aplicación que te ofrece todo eso y algo más en un solo paquete. Dispones de MAMP o MAMP PRO, ambos te sirven para lo mismo y ambos comparten la misma instalación de MySQL, las mismas bases de datos, etc.
En este artículo quiero dejar unas notas rápidas sobre cómo trabajar con MySQL por línea de comandos o terminal, para no olvidarme algunas investigaciones y pasos que he tenido que realizar para que el sistema me reconozca el comando mysql.
Por qué línea de comandos MySQL
Para administrar una base de datos MySQL contamos con numerosas herramientas, con interfaz web como PhpMyAdmin o con interfaz de aplicación de escritorio como MySQL Workbench o Sequel Pro. La forma menos visual es justamente la línea de comandos, por lo que quizás muchos se preguntarán sobre la necesidad de disponer de un acceso a través del terminal.
Pues bien, el terminal es un aliado que siempre está ahí. El terminal es lo único que tienes en muchos servidores para poder conectarte con una base de datos MySQL y te permite no solo realizar consultas, sino realizar backups, restaurarlos, etc. Cuando tienes un VPS o un dedicado lo que vas a tener siempre es la línea de comandos. Quizás eres de los que prefieren no publicar en tu servidor herramientas como PhpMyAdmin, por la puerta de entrada que estás abriendo a posibles ataques. Por el mismo motivo, quizás tampoco te agrada la idea de abrir puertos destinados al trabajo con MySQL desde otras redes. Entonces lo que te queda es la línea de comandos.
Trabajar con la línea de comandos siempre te hará más libre, porque evitas depender de terceros programas. Además, si quieres reproducir en tu ordenador local las condiciones de trabajo que vas a tener con los servidores remotos y acostumbrarte al día a día con la línea de comandos, o para hacer tareas de administración de bases de datos no disponibles de otro modo, entonces te interesa usar el cliente de terminal de MySQL.
Dónde está el cliente de MySQL en MAMP
Para acceder al cliente de MySQL por terminal, para gestionar las bases de datos, yo estaba acostumbrado a usar simplemente el comando "mysql". Al menos en Windows e incluso en Windows, pero mi sorpresa es que después de instalar MAMP no está disponible ese comando. El error que te encontrarás, si te pasa como a mi, es que al lanzar el comando recibes el mensaje.
mysql: command not found
Lo primero que piensas es que no está en el PATH. Entonces te vas al directorio de tu instalación de MAMP y encontrarás el cliente de MySQL por línea de comandos. El archivo se llama mysql y está en la ruta:
/Applications/MAMP/Library/bin/
Lo más normal es que desde esa ruta invocases el comando de MySQL "mysql" y que te funcionase, pero no es así. Tampoco indicando la ruta completa al cliente /Applications/MAMP/Library/bin/mysql funciona. Hay que hacer algunos pasos
- Primero asegúrate que tu comando "mysql" está en la ruta que te he indicado. Generalmente lo encontrarás en /Applications/MAMP/Library/bin/mysql
- Crea un archivo llamado ".bash_profile" en tu ruta ~/ (o edita el que puedas tener anteriormente). Ten en cuenta que los archivos que comienzan por un punto "." en Mac OS X (así como en Linux) son archivos ocultos, por lo que no lo encontrarás con finder ese archivo aunque esté creado.
- Edita ese archivo y agrega la línea.
- Por favor, ten en cuenta que la ruta de mysql corresponda con la que estás agregando en el ".bash_profile"
- Guarda el archivo
- Reinicia el terminal, pues ese nuevo perfil no estará disponible hasta que no salgas del todo del programa terminal. Menú superior "Terminal / Salir de Terminal"
export PATH=$PATH:/Applications/MAMP/Library/bin
Con esto ya podrías acceder a tu comando mysql para conectar con el sistema gestor de base de datos. El comando será algo como:
mysql -h localhost -u root -p
A continuación te pedirá tu clave de "root".
Para más opciones del cliente mysql de terminal, por favor, lee el artículo de MySQL por línea de comandos, que es válido para cualquier tipo de sistema operativo.
Miguel Angel Alvarez
Fundador de DesarrolloWeb.com y la plataforma de formación online EscuelaIT. Com...