Ene 042015
 
Artículo Administración de Servidores

Un administrador de sistemas puede necesitar conectarse frecuentemente a una base de datos MySQL por línea de comandos, para realizar tareas de administración, optimización, etc. Para establecer la conexión, se utiliza normalmente el cliente mysql, al que hay que indicarle el usuario y la contraseña de acceso a la base de datos, así como el servidor y el puerto en el que se encuentra.

En este artículo se explica cómo establecer la información de conexión por defecto en un fichero de configuración, de manera que no sea necesario introducirla cada vez que se realiza una nueva conexión.

El comando con el que típicamente se establece una sesión interactiva contra una base de datos es de la forma:

$ mysql --user=usuario --password=contraseña base_de_datos

o bien, utilizando las opciones de una sola letra:

$ mysql -u usuario -pcontraseña base_de_datos

Por otra parte, si la base de datos se encuentra en otro servidor, o utiliza un puerto de comunicación TCP distinto del puerto por defecto (3306), o utiliza un protocolo de comunicación distinto del protocolo por defecto, también debemos indicar estos parámetros de conexión:

$ mysql -u usuario -pcontraseña -h servidor_db -p 13306 base_de_datos

Todos estos parámetros se pueden establecer en un fichero de configuración. mysql lee una serie de ficheros de configuración, en el siguiente orden:

Linux

  • /etc/my.cnf – Opciones globales
  • /etc/mysql/my.cnf  – Opciones globales
  • SYSCONFDIR/my.cnf  – Opciones globales
  • $MYSQL_HOME/my.cnf Opciones a nivel de servidor
  • defaults-extra-file – El fichero especificado con –defaults-extra-file=path
  • ~/.my.cnf – Opciones a nivel de usuario

Windows

  • %PROGRAMDATA%\MySQL\MySQL Server 5.7\my.ini, %PROGRAMDATA%\MySQL\MySQL Server 5.7\my.cnf  – Opciones globales
  • %WINDIR%\my.ini, %WINDIR%\my.cnf  – Opciones globales
  • C:\my.ini, C:\my.cnf – Opciones globales
  • INSTALLDIR\my.ini, INSTALLDIR\my.cnf  – Opciones a nivel de servidor
  • defaults-extra-file – El fichero especificado con –defaults-extra-file=path
  • %APPDATA%\MySQL\.mylogin.cnf – Opciones a nivel de usuario

Los parámetros de conexión (usuario, password, host, port, protocol,…) se pueden especificar en el interior de cualquiera de estos ficheros, bajo un grupo de opciones genérico “[client]”. Por ejemplo:

[client]
user=usuario
password="contraseña"
host=servidor_db
port=3306
socket=/tmp/mysql.sock

El grupo genérico “[client]” se utiliza para cualquier cliente que se conecte a la base de datos (p.ej., mysql, mysqldump, …)

También es posible establecer opciones específicas para un determinado cliente, añadiendo el correspondiente apartado debajo del grupo genérico:

[client]
user=usuario
password="contraseña"
host=servidor_db
port=3306
socket=/tmp/mysql.sock

[mysqldump]
user=usu_dump

En este ejemplo, el comando mysqldump se conectará a la base de datos utilizando el usuario “usu_dump” establecido en el grupo [mysqldump], y el resto de los parámetros por defecto establecidos en el grupo [client]

Referencias

MySQL Reference manual – 4.2.6 Using option files

 Publicado por en 6:07 pm

 Deja un comentario

(requerido)

(requerido)