Comandos de MySQL por Consola

comandos-de-mysql-por-consola

Es normal que utilicemos MySQL a través de páginas PHP y para administrar la base de datos utilicemos un programa como PhpMyAdmin, pero a veces no nos queda otro remedio que acceder a la base de datos a través de la línea de comandos.

MySQL tiene un programa que se llama con el mismo nombre de la base de datos (mysql) que sirve para gestionar la base datos por línea de comandos.

Conectar con el servidor MySQL

Lo primero que tendremos que hacer es conectar con el sistema gestor de MySQL. Para ello, desde la línea de comandos invocamos a MySQL. Simplemente tenemos que escribir el comando “mysql” e indicarle unas opciones de conexión.

mysql

Con esa sentencia se conecta uno con la base de datos con los parámetros por defecto. Es decir, al servidor local, con usuario y password igual a cadenas vacías.

Lo más normal es que tengamos que indicar algún otro dato para conectar con la base de datos, como el usuario, la clave o la dirección del servidor con el que queremos conectar. La sintaxis sería la siguiente:

mysql -h nombre_servidor -u nombre_usuario -p

Si deseamos conectarnos a la base de datos en local y con nombre de usuario root tendríamos que escribir:

mysql -h localhost -u root -p

Lo primero que nos preguntará será el password para el usuario root. Una vez introducida la clave, ya estaremos dentro de la línea de comandos de MySQL. Con ello el prompt cambiará a algo como esto:

mysql>

Podríamos haber indicado la contraseña directamente en la línea de comandos para iniciar la sesión con MySQL, pero esto se desaconseja por razones de seguridad. De todos modos, la sintaxis hubiera sido:

mysql -h localhost -u root -pmi_clave

Nos fijamos que entre -h y el nombre del host hay un espacio en blanco, igual que entre -u y el nombre de usuario. Sin embargo, entre -p y la clave no debemos poner ningún espacio.

Dentro de la consola de MySQL

Una vez dentro, tendremos a nuestra disposición todas las sentencias de MySQL para el trabajo con la base de datos y el lenguaje SQL.

Lo más normal es que primero se tenga que conectar con una base de datos en concreto, de entre todas las que puede tener creadas en su servidor MySQL. Eso se hace con el comando use, seguido del nombre de la base de datos que desea conectar.

mysql> use mibasedatos;

Esto nos conectaría con la base de datos llamada “mibasedatos”.

Atención: Hay que fijarse que todas las sentencias dentro de la línea de comandos de MySQL acaban en “;”. Si no colocamos el punto y coma, lo más seguro es que no se ejecute el comando y nos vuelva a salir el prompt para que sigamos introduciendo el comando. Si lo que queríamos era ejecutar la sentencia que habíamos escrito antes, con simplemente entrar el “;” será suficiente. Es decir, no debemos escribir de nuevo la sentencia entera, sólo el “;” y volver a apretar “enter”.

Si queremos ver una lista de las bases de datos alojadas en nuestro servidor podemos escribir el comando show databases. Así:

mysql>show databases;

Con esto nos mostraría una lista de las bases de datos de nuestro servidor. Algo como esto:

mysql> show databases-> ;

 


5 rows in set (0.02 sec)

Si queremos crear una base de datos, podremos hacerlo con el comando “create database” seguido del nombre de la nueva base de datos.

mysql> create database miprueba;

Eso nos creará una base de datos que se llama “miprueba”. Como habíamos comentado, si queremos luego usar esa base de datos escribiríamos:

mysql> use miprueba;

Lógicamente, esta base de datos recién creada estará vacía, pero si estuviéramos usando una base de datos ya creada y queremos ver las tablas que tiene escribiríamos el comando “show tables”.

mysql> show tables;

Si no hay tablas, nos dirá algo como “Empty set”, pero si tenemos varias tablas dadas de alta en la base de datos que estamos usando, nos saldrá una lista de ellas:

mysql> show tables;


2 rows in set (0.00 sec)

Ahora, si deseamos obtener información sobre una tabla, para saber qué campos tiene y de qué tipo, podremos utilizar el comando describe seguido del nombre de la tabla.

 

mysql> describe administrador;

 


 4 rows in set (0.11 sec)

 

Otras Sentencias SQL:

Desde la consola de MySQL podemos indicar por línea de comandos todo tipo de sentencias en lenguaje SQL, como selecciones, inserciones, actualizaciones, creación de tablas, etc. El mecanismo es el que se puede deducir. Simplemente colocamos la sentencia a ejecutar seguida del punto y coma. Veamos una serie de sentencias seguidas y el resultado de ejecutarlas:

mysql> create table prueba (id_prueba int);
 Query OK, 0 rows affected (0.08 sec)
 
 mysql> insert into prueba (id_prueba) values (1);
 Query OK, 1 row affected (0.00 sec)
 
 mysql> insert into prueba (id_prueba) values (2);
 Query OK, 1 row affected (0.00 sec)
 
 mysql> insert into prueba (id_prueba) values (3);
 Query OK, 1 row affected (0.00 sec)
 
 mysql> select * from prueba;

 


3 rows in set (0.00 sec)

Para salir de la línea de comandos de MySQL:

Una vez hemos terminado de trabajar con MySQL, si queremos cerrar la conexión con el servidor, simplemente escribimos “quit” desde el prompt de MySQL:

mysql> quit

Para generar un archivo .sql desde una base de datos se debe ejecutar:

mysqldump -h servidor -u usuario -p base_de_datos > archivo_salida.sql

Para ejecutar un archivo .sql en una base de datos:

mysql -h servidor -u usuario -p base_de_datos < archivo_salida.sql
Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *