Búsqueda de sitios web

Conéctese a la base de datos MySQL desde la línea de comando


Entendamos cómo se puede conectar MySQL a la base de datos mediante la línea de comandos. Esto se hace para clientes como mysql o mysqldump.

El siguiente comando invoca mysql sin especificar ningún parámetro de conexión explícito:

mysql

Como no hay opciones de parámetros, se aplicarán los valores predeterminados:

  • El nombre de host predeterminado es localhost.

  • El nombre de usuario predeterminado es ODBC en Windows.

  • No se envía ninguna contraseña porque no se ha mencionado ni --password ni -p.

Para mysql, el primer argumento que no es una opción se considera el nombre de la base de datos predeterminada. Como no existe tal argumento, mysql no selecciona ninguna base de datos predeterminada.

Para especificar el nombre de host, el nombre de usuario y la contraseña específicamente, proporcione las opciones adecuadas en la línea de comando. Para seleccionar una base de datos predeterminada, agregue un argumento de nombre de base de datos. Veamos esto con el comando:

mysql --host=localhost --user=myname --password=password mydb
mysql -h localhost -u myname -ppassword mydb

Los programas cliente determinan el tipo de conexión que se debe realizar:

  • Si el host no está especificado o es un host local, se produce una conexión con el host local.

  • De lo contrario, la conexión utilizará TCP/IP.

Para garantizar que el cliente establezca una conexión TCP/IP con el servidor local, se debe especificar "—host" o "-h", con un valor de nombre de host de 127.0.0.1 (en lugar de localhost). En lugar de esto también se puede mencionar la dirección IP o el nombre del servidor local. El protocolo de transporte se puede mencionar explícitamente utilizando la opción --protocol=TCP. Veamos con el ejemplo:

Ejemplo

mysql --host=127.0.0.1
mysql --protocol=TCP

En Windows, se puede obligar al cliente MySQL a utilizar una conexión de canalización con nombre. Esto se puede hacer especificando la opción --pipe o --protocol=PIPE. De lo contrario, . (punto) también se puede mencionar como nombre de host.

Las conexiones a servidores remotos utilizarán TCP/IP. El comando se conectaría al servidor que se ejecuta en remoto.ejemplo.com utilizando el número de puerto predeterminado (3306). Veámoslo en acción:

mysql --host=remote.example.com

Para especificar un número de puerto explícitamente, se puede utilizar la opción --port o -P. Veamos cómo se puede hacer:

mysql --host=remote.example.com --port=13306

Para hacer que se utilice el número de puerto, fuerce una conexión TCP/IP. Se puede hacer usando cualquiera de las formas:

mysql --port=13306 --host=127.0.0.1
(or)
mysql --port=13306 --protocol=TCP

Es posible especificar parámetros de conexión sin ingresarlos en la línea de comando cada vez que se invoca un programa cliente.